方法1: QTabWidgetから選択されたタブの名前を取得する
selected_tab_name = tab_widget.tabText(tab_widget.currentIndex())
print(selected_tab_name)
方法2: シグナルとスロットを使用して選択されたタブの名前を取得する
from PyQt5.QtWidgets import QApplication, QMainWindow, QTabWidget
from PyQt5.QtCore import pyqtSlot
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.tab_widget = QTabWidget(self)
self.tab_widget.currentChanged.connect(self.tab_changed)
@pyqtSlot(int)
def tab_changed(self, index):
selected_tab_name = self.tab_widget.tabText(index)
print(selected_tab_name)
app = QApplication([])
window = MainWindow()
window.show()
app.exec_()
方法3: イベントフィルターを使用して選択されたタブの名前を取得する
from PyQt5.QtCore import QEvent
class TabWidget(QTabWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.installEventFilter(self)
def eventFilter(self, obj, event):
if obj == self and event.type() == QEvent.CurrentChanged:
selected_tab_name = self.tabText(self.currentIndex())
print(selected_tab_name)
return super().eventFilter(obj, event)
app = QApplication([])
tab_widget = TabWidget()
tab_widget.addTab(QWidget(), "タブ1")
tab_widget.addTab(QWidget(), "タブ2")
tab_widget.show()
app.exec_()
これらの方法を使用することで、PyQtで選択されたタブの名前を取得することができます。ご希望の方法を選んで実装してみてください。