【问题标题】:Qt Python Access content of a tab in QTabWidgetQt Python 访问 QTabWidget 中选项卡的内容
【发布时间】:2021-06-08 11:09:49
【问题描述】:

我的应用程序是 QLineEdit 的基本列表,用户在其中输入值并单击“生成”以创建无人机的配置文件。

<widget class="QLineEdit" name="namespace">
   <property name="text">
      <string>Drone1</string>
   </property>
</widget>

如果我这样做:

self.namespace.text()

我收到此字段的值。

现在,我们想为许多无人机创建一个配置文件,所以我使用 QTabWidget 为我的 qtapp 中的每个无人机创建一个选项卡,我只是不明白如何选择一个选项卡,提取我所有的值,传递给下一个标签,提取所有值...

类似这样的:

for x in tabWidget.count():
   do_something(tabWidget.tab[x].namespace.text())

#or

for tab in tabWidget:
   do_something(tab.namespace.text())

我不是 Qt 专家,我在网上没有找到很多东西,所以我认为我对这个问题没有很好的反思。谢谢你的帮助

【问题讨论】:

  • 您可以使用tabWidget.setIndex(i) 在QTabWidget 中通过其索引i 设置当前选项卡(使用tabWidget.count() 确定有多少选项卡)。或者,如果您在tab 中存储了对选项卡小部件之一的引用,也可以使用tabWidget.setCurrentWidget(tab)。文档在这里(它适用于 PySide2,但与 PyQt5 基本相同):doc.qt.io/archives/qtforpython-5.12/PySide2/QtWidgets/…
  • 如果“选择”是指“访问”,请使用widget(index)do_something(tabWidget.widget(x).namespace.text())
  • 我刚刚找到了,谢谢
  • @q7frkz 供将来参考,请注意术语:“选择标签”和“访问其内容”是两个非常不同的东西。
  • @musicamante 好的

标签: python pyqt qtabwidget


【解决方案1】:

好的 我找到了,在文档里,我没看到

for x in self.tabWidget.count()
   do_something(self.tabWidget.widget(x).namespace.text())

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多