aoh*_*aoh 8 qt pyqt qtabwidget pyqt5
PyQt5 QTabWidget有一个方法setCurrentIndex,您可以使用该方法使特定选项卡成为活动选项卡.我似乎找不到任何方法来按标签名称索引(我在Qt Designer中设置).是否有任何方式(直接或间接)按名称索引?
ekh*_*oro 11
选项卡名称将成为设置为选项卡页面的窗口小部件的对象名称.添加选项卡后,页面将自动重新设置为选项卡窗口小部件的内部堆栈窗口小部件.这意味着您可以像这样获得对页面的引用:
page = tabwidget.findChild(QWidget, tabname)
Run Code Online (Sandbox Code Playgroud)
得到它的索引:
index = tabwidget.indexOf(page)
Run Code Online (Sandbox Code Playgroud)
或者直接按名称设置当前标签,如下所示:
tabwidget.setCurrentWidget(tabwidget.findChild(QWidget, tabname))
Run Code Online (Sandbox Code Playgroud)
给定 tab_name 的方法返回名称与 tab_name 匹配的选项卡的索引列表。
def get_indices(tab_name):
return [index for index in range(tab_widget.count())
if tab_name == tab_widget.tabText(index)]
Run Code Online (Sandbox Code Playgroud)
使用此函数找到索引后,可以使用标准的 PyQt 方法。
不是最好的方法,但有时可能有用。
另一种方法是在添加选项卡时记住选项卡的索引。然后稍后在您的代码中重用它:
index = tabWidget.addTab(myWidget)
// ...
tabWidget.setCurrentIndex(index)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7780 次 |
| 最近记录: |