我们如何在按钮单击时在 pyqt 中打开特定于选项卡的选项卡?
Posted
技术标签:
【中文标题】我们如何在按钮单击时在 pyqt 中打开特定于选项卡的选项卡?【英文标题】:How can we open a tab specific tab in pyqt on button click? 【发布时间】:2017-09-25 07:01:13 【问题描述】:我使用 qt Designer 在我的设计页面中制作了 10 个选项卡,并在其顶部制作了一个菜单栏。 现在我想将菜单栏中的选项之一连接到选项卡(比如选项卡 5)。 即当我点击菜单->按钮时tab5被打开
【问题讨论】:
【参考方案1】:要打开一个标签你必须使用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)
【讨论】:
这工作了谢谢,但我还有一些事情要做。我有标签里面的标签,我想在按钮点击后导航到标签5,现在我想在tab5里面的tab2..你能帮我解决这个问题吗?很抱歉我现在正在扩展我的问题:) 缺少什么? 显示您的代码以便更好地理解,我知道通过单击按钮访问 tab5,如我在示例中所示,您要在哪个操作之前选择嵌套的 tab2? self.Add_GroupD.triggered.connect(lambda : self.tabWidget_4.setCurrentIndex(4)) self.Add_GroupD.triggered.connect(lambda : self.tabs.setCurrentIndex(1)) 是的,我想准确地转到嵌套的 tab2。你有比这更好的主意吗?以上是关于我们如何在按钮单击时在 pyqt 中打开特定于选项卡的选项卡?的主要内容,如果未能解决你的问题,请参考以下文章
pyqt designer tabletree表格内容显示全