我剛開始使用pyqt4。我也跟着教程(http://zetcode.com/tutorials/pyqt4/) 有一件事情困擾我的是這個部分:PyQt4中的多個窗口?
def main():
app = QtGui.QApplication(sys.argv)
ex = GUI()
sys.exit(app.exec())
而這樣做的原因,我在這裏解釋:
我已打開四個窗口,除了一個小程序第一個主窗口。 所以我試圖複製我看到的與main-window一起工作,併爲每個新窗口創建一個類,並試圖像上面那樣做。目前看起來像這樣:
def main2():
#app = QtGui.QApplication(sys.argv)
ex2 = Settings()
sys.exit(app.exec())
正如你所看到的我修改了它。如果我將該函數的第一行取消註釋,程序將崩潰。我想沒有sys.exit(app.exec_()) -part做但這隻會使新窗口關閉毫秒這表明後。 儘管如此,所有的東西都可以運行和運行。只有在命令窗口中顯示錯誤消息。我不知道如何解決這個問題,因爲我不能刪除最後一個行,我dont't知道做什麼用替代「應用程序」。
我知道我可能做新的Windows錯誤從一開始,但是我不知道如何使這些窗口從以任何其他方式在原窗口打開。我還沒有能夠得到任何其他的工作,至少現在運行和工作。所以,唯一的問題是在提示錯誤信息,這將是很好的擺脫他們:)
感謝所有幫助(複雜和容易的)!
忘了提,我做了上課的時間是這樣的:
class GUI(QtGui.QMainWindow):
def __init__(self):
super(GUI, self).__init__()
self.initUI()
和
class Settings(QtGui.QWidget):
def __init__(self):
super(Settings, self).__init__()
...here goes some more...
self.initUI2()
,我通過調用MAIN2()打開設置窗口
謝謝你,那不明確一些事情。但我無法同時顯示所有窗口。首先它是在啓動時顯示的QMainWindow,並且從那裏取決於打開的內容,因爲我可以在菜單欄中選擇不同的選項。例如,幫助窗口或設置窗口。 – 2013-04-26 11:19:28
@right_there:你需要在響應創建(或至少顯示)設置窗口的事件,看你遵循有關事件的教程:http://zetcode.com/tutorials/pyqt4/eventsandsignals/ – Julien 2013-04-26 12:10:17
哦,我我已經做到了!我只是不想把所有的代碼放在這裏,就像560線。我已經完成了所有工作,當我點擊按鈕時窗口打開。我有一個很好的圖形用戶界面菜單欄,我已經安排了設置窗口中的所有按鈕等。它只是拋出了我在第一篇文章中描述的錯誤信息,我不知道如何改變它。也許我應該在這裏提供更多的代碼? – 2013-04-26 13:28:11