0
import sys
from PyQt4 import QtCore, QtGui
from test_ui import Ui_MainWindow

class StartQt4(QtGui.QMainWindow):
    def __init__(self,parent=None):
        QtGui.QWidget.__init__(self)
        self.ui=Ui_MainWindow()
        self.ui2=Ui_MainWindow()
        self.ui2.setupUi(self)      # ui2 setup
        self.ui.setupUi(self)       # ui  setup .interchanging these 2 lines gives 2 guis


        QtCore.QObject.connect(self.ui.button_open,QtCore.SIGNAL("clicked()"),self.file_open)

    def file_open(self):
        self.ui.editor_window.setText('Yes u are doing good')

if __name__ == "__main__":
    app=QtGui.QApplication(sys.argv)
    myapp=StartQt4()
    myapp.show()
    sys.exit(app.exec_())

シンプルなpyqt4 guiを作成しようとしています.私の目標は、一度に2つのGUIウィンドウを開くことです.2つのオブジェクトを作成しましたui ui2.オブジェクトウィンドウだけuiが開かれます.どうしてそれが可能ですか.display( myapp.show())の前に異なる時間に呼び出されるメソッドですよね? pyqt4 の学習を開始しました。

4

1 に答える 1

2

生成されたクラスUi_MainWindowは、ウィンドウ自体を表すのではなく、ウィンドウに含まれるウィジェットのみを表します。window は、selfに渡すパラメーターですsetupUi()

2 つのウィンドウを作成するには、それぞれに 1 つのみを持つ 2 つStartQt4のオブジェクトを作成し、それぞれをUi_MainWindow呼び出すshow()必要があります。

于 2012-09-09T19:36:27.660 に答える