0

如何制作一个在主窗口开始之前出现的弹出窗口?我希望弹出窗口有几个QLineEdit小部件来接收主窗口所需的输入。我搜索了解决方案,但我无法理解找到的大多数示例。有人能帮我吗?

4

1 回答 1

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)
于 2012-08-28T17:30:55.837 回答