0

私はこれに非常に慣れておらず、Qt Designer を使用して非常にシンプルなメイン ウィンドウ UI を作成しました。私のプロジェクトで最初に必要な機能は、クリックしたときに別のウィンドウを開くボタンです。

だから基本的に私はautoGenUI.pypyside-uicを使って生成されたファイルを持っています

from PySide import QtCore, QtGui

class AutoGeneratedUI(object): 
    def setupUi(self, MainWindow):
        #Auto generated code

    def retranslateUi(self, MainWindow):
        #Auto generated code

もちろん、Qtデザイナーが作成したため、これはすべて正常に機能します。次に、基本的にアプリケーションのものである独自の .py ファイルを作成します。

次のようになります。

import sys

from PySide.QtCore import *
from PySide.QtGui import *

from autoGenUI import *

class MyMainWindow(QtGui.QMainWindow):
    def __init__(self, parent=None):
        super(MyMainWindow, self).__init__(parent)
        self.ui = AutoGeneratedUI()
        self.ui.setupUi(self)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    myMainWindow = MyMainWindow()
    myMainWindow.show()
    sys.exit(app.exec_())

私のボタンはself.pushButton、自動生成された Python UI で呼び出されます。別のウィンドウを設計してからそのウィンドウを呼び出したいのですが、今のところ何でも構いません。ボタンに何かをさせるコードをどこに置くべきかわかりません。

ドキュメントに従おうとしましたが、何も機能しませんでした。

どんな助けでも大歓迎です。

ありがとう

4

1 に答える 1

1

pushButton のクリック信号を on_button_clicked() などのメソッドに接続する必要があります。

def __init__(self, parent=None):
    super(MyMainWindow, self).__init__(parent)
    self.ui = AutoGeneratedUI()
    self.ui.setupUi(self)
    # connect the clicked signal to on_button_clicked() method
    self.pushButton.clicked.connect(self.on_button_clicked) 

def on_button_clicked(self):
    print "button clicked"
    # here is the code to open a new window
于 2012-06-20T05:26:42.157 に答える