【发布时间】:2020-04-12 04:52:02
【问题描述】:
嗨,在我之前的帖子中,import responsible widget page for tabWidget Python,它运行良好。 现在我正在创建 ui 文件并使用 uic.loadUi(不使用 pyuic5)导入 .py 文件,如图所示。 当我试图将页面继承到 application.py 时它不起作用。我相信我在应用多重继承时做错了。我尝试了很多方法。但没有获得成功。 谁能解决我的问题。 我什至尝试使用 pyuic5 转换 ui 文件并继承到 application.py 。但同样的结果。 这里是谷歌驱动器链接: https://drive.google.com/drive/folders/1UEGw1YR7hxKhH_KK9tX8CiHMgAbEVv5W?usp=sharing
【问题讨论】:
-
首先,不要将代码发布为图片。然后,您使事情变得比实际复杂得多。您创建的
Ui_student和Ui_main已经 都是QWidget,创建进一步的子类根本没有任何意义。再次阅读有关using Designer 的指南并尝试了解它是如何工作的,并注意这些示例使用的类和它们继承自:Ui_*名称 使用了 pythonobject类,但如果你使用 loadUi,你已经在处理 QWidgets。 -
因此,不仅您不应该这样命名它们(这是一种命名约定,仅用于
pyuic生成的文件,您没有使用),而且您还应该更好地理解如何子类化有效,就像在您的application.py中一样,您试图创建从同一个祖先继承的子类:您实际上是在做类似class StundentPage(QtWidgets.QWidget, QtWidgets.QWidget)的事情。 -
好的,让我再看一遍文档。感谢您的评论。