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