如何按名称设置QTabWidget的当前选项卡?

问题描述:

PyQt5的QTabWidget有一个方法setCurrentIndex,您可以使用该方法使特定选项卡变为活动选项卡。我似乎无法找到任何方式通过标签名称索引,虽然(我在Qt设计器中设置)。有没有什么方法(直接或间接)按名称进行索引?如何按名称设置QTabWidget的当前选项卡?

http://doc.qt.io/qt-5/qtabwidget.html#currentIndex-prop

的标签名成为设置为标签的页面控件的对象名称。添加该选项卡后,该页面将自动重新添加到选项卡窗口小部件的内部堆栈窗口小部件。这意味着你可以这样对页面的引用:

page = tabwidget.findChild(QWidget, tabname) 

,并得到其指数是这样的:

index = tabwidget.indexOf(page) 

或类似这样的名字直接设置在当前标签:

tabwidget.setCurrentWidget(tabwidget.findChild(QWidget, tabname))