python - PyQt5 QTabs 是唯一的解决方案
问题描述
我的 GUI 应用程序需要运行多个应用程序。想象一个类似于选项卡的左侧(或顶部)菜单,用户可以在其中选择一个选项卡并与 application_x 交互。看起来 QTab 可以做到这一点。我的问题是:
- QTabs 是唯一的解决方案吗?
- 我可以将标签放在左侧(相对于顶部),如果可以的话怎么办?
- 所有选项卡(它们各自的应用程序/进程)可以同时运行(并发)吗?或者只有暴露的选项卡将运行。
解决方案
不必使用选项卡在同一个应用程序中执行多个任务。小部件是不实现执行其他任务的逻辑的视觉元素,它们分别用于从用户获取和向用户显示信息。
在 QTabWidget 的情况下,它是一个可以包含多个小部件并且只显示一个小部件的小部件。
有了以上内容:
1. QTabs 是唯一的解决方案吗?
如果您的问题是要在同一个应用程序中执行 n 个任务,您必须使用选项卡,那么答案是否定的,因为只有一个窗口的应用程序可以执行 n 个任务,所以没有必要。
2. 我可以把标签放在左边(相对于顶部)吗?如果可以的话怎么办?是的,您可以将选项卡放在右侧:
from PyQt5 import QtWidgets
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
w = QtWidgets.QTabWidget(tabPosition=QtWidgets.QTabWidget.West)
for i in range(5):
widget = QtWidgets.QWidget()
w.addTab(widget, "tab-{}".format(i))
w.resize(640, 480)
w.show()
sys.exit(app.exec_())
3.所有选项卡(它们各自的应用程序/进程)可以同时运行(并发)吗?或者只有暴露的选项卡将运行。
因为它表明执行的任务数量不取决于选项卡。因此,除了系统限制(RAM、最大线程数等)外,您始终可以执行您想要的任务。
推荐阅读
- c++ - 嵌套的 std::transform 效率低吗?
- reactjs - 警告:已定义但从未使用过
- php - 我该如何解决这个 socketio 问题
- c# - 如何使用 Entity Framework 通过 ASP.NET Core Web API 处理通用查询?
- ios - 应用程序突然停止并收到 NSURLErrorDomain 错误
- powerbi-desktop - Power BI SQL 连接
- python - 如何在每第 n 行后读取 csv 文件并创建一个新的 csv 文件?
- excel - 如果没有输入值,则停止宏
- javascript - Javascript将对象值分配给另一个对象值
- python - 如何链接到 libssl.so.1.1 “./python:错误 libssl.so.1.1:无法打开共享对象文件:没有这样的文件或目录”