如何在主窗口开始之前创建一个弹出窗口?我希望弹出窗口有几个QLineEdit
小部件来接收主窗口所需的输入。我搜索了解决方案,但我无法理解我找到的大多数例子。有人可以帮助我吗?
答案 0 :(得分:1)
只需创建QDialog的子类,在运行正常启动逻辑之前以模态方式执行它。
这就是我为一个需要登录的应用程序做的,工作得很好。这将是Python中的一般想法(我在PyQt中考虑它的时间较少):
import sys
from PyQt4 import QtGui, QtCore
from mymodule import MyDialog, MyWindow
def main(argv):
app = QtGui.QApplication(argv)
# make a dialog that runs in its own event loop
dlg = MyDialog()
if ( not dlg.exec_() ): # in C++, this would be dlg->exec()
sys.exit(0)
var1, var2, var3 = dlg.values()
window = MyWindow()
window.setPropertyOne(var1)
window.setPropertyTwo(var2)
window.setPropertyThree(var3)
window.show()
sys.exit(app.exec_())
if ( __name__ == '__main__' ):
main(sys.argv)