我们如何在单击按钮时打开 pyqt 中的特定选项卡?
How can we open a tab specific tab in pyqt on button click?
我使用 qt designer 在我的设计页面中制作了 10 个选项卡,并在其顶部制作了一个菜单栏。
现在我想将菜单栏中的一个选项连接到一个选项卡(比如选项卡 5)。
即当我点击菜单 - >按钮然后 tab5 被打开
要打开选项卡,您必须使用 QTabWidget
的 setCurrentIndex()
方法,您必须为该方法指定索引。每次与菜单的QAction
关联的触发信号
必须执行以上
class MainWindow(QMainWindow):
def __init__(self, parent=None):
QMainWindow.__init__(self, parent)
widget = QTabWidget(self)
for i in range(10):
widget.addTab(QListWidget(), "tab{}".format(i+1))
self.setCentralWidget(widget)
menubar = self.menuBar()
action = menubar.addAction("Select tab5")
action.triggered.connect(lambda: widget.setCurrentIndex(4))
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec_())
加上:
self.Add_GroupD.triggered.connect(lambda checked, index1=4, index2=1 : self.someslot(index1, index2))
def someslot(self, index1, index2)
self.tabWidget_4.setCurrentIndex(index1)
self.tabs.setCurrentIndex(index2)
我使用 qt designer 在我的设计页面中制作了 10 个选项卡,并在其顶部制作了一个菜单栏。 现在我想将菜单栏中的一个选项连接到一个选项卡(比如选项卡 5)。 即当我点击菜单 - >按钮然后 tab5 被打开
要打开选项卡,您必须使用 QTabWidget
的 setCurrentIndex()
方法,您必须为该方法指定索引。每次与菜单的QAction
关联的触发信号
class MainWindow(QMainWindow):
def __init__(self, parent=None):
QMainWindow.__init__(self, parent)
widget = QTabWidget(self)
for i in range(10):
widget.addTab(QListWidget(), "tab{}".format(i+1))
self.setCentralWidget(widget)
menubar = self.menuBar()
action = menubar.addAction("Select tab5")
action.triggered.connect(lambda: widget.setCurrentIndex(4))
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec_())
加上:
self.Add_GroupD.triggered.connect(lambda checked, index1=4, index2=1 : self.someslot(index1, index2))
def someslot(self, index1, index2)
self.tabWidget_4.setCurrentIndex(index1)
self.tabs.setCurrentIndex(index2)