1
私はQTDesigner 5に問題があります。これは簡単なことですが、問題を理解できません。Python 3で2番目のウィンドウを開くQTDesigner 5
私がしたいことは、ボタンをクリックすると2番目のウィンドウを開くことです: QTDesigner(PyQT5!)でメインウィンドウとセカンダリを設計し、pyuicから.pyファイルに変換しました。メインウィンドウと一緒にだけでなく
from PyQt5 import QtGui, QtWidgets, QtCore, uic
import UI14 as UIImport
import GIPrompt as GIImport
class MainWindow(UIImport.Ui_MainWindow):
def __init__(self, window):
UIImport.Ui_MainWindow.__init__(self)
self.setupUi(window)
self.radioButtonGI.clicked.connect(self.openGIPrompt)
def openGIPrompt(self):
windowGI = QtWidgets.QDialog()
Gi = GIPrompt(windowGI)
windowGI.show()
class GIPrompt(GIImport.Ui_GIPrompt):
def __init__(self, windowGI):
GIImport.Ui_GIPrompt.__init__(self)
self.setupUi(windowGI)
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()
prog = MainWindow(window)
window.show()
sys.exit(app.exec_())
私はmain関数に以下を追加する場合は、「GiPrompt」ウィンドウが開きます:メインウィンドウには、次のコードで問題なく開く
if __name__ == '__main__':
app = QtWidgets.QApplication(sys.argv)
window = QtWidgets.QMainWindow()
prog = MainWindow(window)
window.show()
"""Open secondWindow"""
windowGI = QtWidgets.QDialog()
Gi = GIPrompt(windowGI)
windowGI.show()
sys.exit(app.exec_())
の場合openGiprompt関数で2番目のウィンドウを開こうとすると、何も起こりません。エラーメッセージが表示されず、ウィンドウが表示されません。しかし、printコマンドは、2番目のウィンドウのinit_functionが呼び出されたことを通知します。
誰かにアイデアはありますか?
ありがとうございます!変数は自己として宣言されていないよう どうやら、初期化ウィンドウは、ガベージコレクションによって処分されています: