1
我在python上做了一些小脚本来做一些事情,我想先问用户输入。这是我当前的代码:使用QT(PySide)通过QInputDialog获取用户输入
import sys
from PySide import QtGui
app = QtGui.QApplication(sys.argv)
gui = QtGui.QWidget()
text, ok = QtGui.QInputDialog.getText(gui, "question",
"""please put the thing I need from you""")
print(text, ok)
if ok:
app.exit()
else:
app.exit()
app.exec_()
print ("I'm aliveeeee'")
对话框弹出窗口正是我想要的,但app.exec_()永远不会结束,因此永远不会执行的代码的其余部分(和过程永远不会完成),我试着用app.exit()
,app.quit()
杀死它,我也尝试显示()和关闭()QWidget,但没有任何工作。
如果我在调用QInputDialog之前做了gui.show()
,然后手动关闭小部件,应用程序成功关闭。但是,这不是我想要的行为。
你能指导我获取我的数据后关闭exec循环的最佳方法吗?
PD:这将是一个Windows应用程序(与py2exe)和使用shell不是一个选项。
哇,我以为你总是要调用exec_()。谢谢! – lithiium