fenêtre principale PyQt5, cliquez sur le bouton pour faire apparaître la fenêtre de dialogue enfant

Tout d' abord créé dans Qt Designer dans une fenêtre principale et une fenêtre de sous-dialogue, comme indiqué ci - dessous: Une
Insérer ici l'image Description
fois la conception terminée, converti en deux fichiers py, pour deux fichiers séparés mise en œuvre appelle la fenêtre enfant, je lis des informations, créer essentiellement un nouveau fichier, puis mettre en œuvre la fenêtre principale et appeler la fenêtre enfant, pas ce que je veux, donc ci - dessous ma mise en œuvre, pour obtenir un fichier dans la fenêtre principale.
sous-fenêtre du premier fichier d'importation dans le fichier principal de la fenêtre, et la création d' une fenêtre enfant du code d'initialisation de la classe de fenêtre est la suivante:

from ChildWindowTest import *

class ChildWin(QtWidgets.QDialog, Ui_Dialog):
    def __init__(self):
        super(ChildWin, self).__init__()
        self.setupUi(self)

Le super constructeur () est un must, sinon, ils peuvent appeler la sous-fenêtre d'affichage, ne peut pas être appelé boutons de la fenêtre de l' enfant et d' autres contrôles.
Ensuite , la fenêtre contextuelle fonction sous-fenêtre pour atteindre, et la réalisation de la touche de fonction de fenêtre enfant [OK], cliquez-fermer le sous-fenêtre et le message texte est affiché dans la fenêtre principale de la boîte. Les codes sont les suivants, pour atteindre la fonction de performance est définie dans la classe principale de la fenêtre:

# 弹出子窗口与实现【确定】按钮功能
    def showDialog(self):
        # 创建子窗口实例
        dialog = ChildWin()
        # 显示子窗口
        dialog.show()
        # 实现子窗口中的【确定】按钮功能
        def pB_OK():
            self.textEdit.setPlainText("子窗口弹出成功!")
            dialog.close()
        # 关联【确定】按钮
        dialog.pushButton.clicked.connect(pB_OK)
        dialog.exec_()

[OK] fonction du bouton que je suis directement défini dans l'intérieur, épais efficace pro-test, et se sentir personnellement seul que re-définir mess confort! La dernière ligne de code dialog.exec_ () est essentiel, de nombreux sous-fenêtre pop - up automatiquement fermée à propos!
Enfin, le bouton [Ouvrir] associé à la fenêtre enfant et affiche alors la fenêtre principale, le code peut être exécuté dans la dernière écriture, comme suit:

# 设置【打开子窗口】按钮
self.pushButton.clicked.connect(self.showDialog)
if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

Ce code d'affichage est destiné à être utilisé directement dans l'interface converti en fichier py, vous n'avez pas besoin de créer un fichier séparé et la classe! Après avoir exécuté l'effet est le suivant:
Insérer ici l'image Description
Insérer ici l'image Description

Publié 17 articles originaux · a gagné les éloges 3 · Vues 1805

Je suppose que tu aimes

Origine blog.csdn.net/weixin_43350361/article/details/104842332
conseillé
Classement