【发布时间】:2015-05-04 23:55:15
【问题描述】:
我一直在尝试在 python3 中使用 QT,并想出了如何制作一个简单的 .ui 文件并将其直接导入 python 程序。但是,我必须使用 python QT 应用程序,而我想拥有自己的自定义循环以便能够向其中添加内容。所以我现在拥有的是:
import sys
from PyQt4 import QtCore, QtGui, uic
class MyWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.desktop = uic.loadUi('mytest.ui')
self.desktop.show()
if __name__ == '__main__':
app = QtGui.QApplication.instance()
window = MyWindow()
sys.exit(app.exec_())
我已经在 PGU 上玩了一些,我已经能够做到这一点
while True:
window.loop()
在 main 中,它允许我放入我自己的与 GUI 无关的额外代码,而无需处理多个线程。但是,我一直无法在 qt 中找到与“循环”等效的内容,并且搜索“qt 自定义循环/更新/blit python”除了向我的应用程序添加 0 秒计时器并在那里放置额外代码的建议外,没有发现任何相关内容似乎……对我不优雅。我想将 GUI 导入我的应用程序,而不是围绕 GUI 构建我的应用程序。
编辑:这是我更新的代码,考虑了 Phyatt 的答案,以供其他人寻找与我相同的答案。
import sys
from PyQt4 import QtGui, QtCore, uic
class TestApp(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.ui = uic.loadUi('mytest.ui')
self.ui.show()
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
win = TestApp()
app.processEvents()
while True:
app.processEvents()
【问题讨论】:
标签: python qt user-interface python-3.x