usos de QDialog – ejemplo útil

import sys

from PyQt5.QtWidgets import QApplication, QDialogButtonBox, QLabel, QMainWindow, QPushButton, QDialog, QVBoxLayout


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        button = QPushButton("clic para un cuadro de dialogo")
        button.clicked.connect(self.button_clicked)
        self.setCentralWidget(button)

    def button_clicked(self, s):
        print("click", s)

        dlg = NuevoDialog()
        if dlg.exec():
            print("Aceptar!")
        else:
            print("Cancelar!")

class NuevoDialog(QDialog):
    def __init__(self):
        super().__init__()

        QBtn = QDialogButtonBox.Ok | QDialogButtonBox.Cancel

        self.buttonBox = QDialogButtonBox(QBtn)
        self.buttonBox.accepted.connect(self.accept) #funciones por defecto del QDialog
        self.buttonBox.rejected.connect(self.reject) #funciones por defecto del QDialog

        self.layout = QVBoxLayout()
        message = QLabel("Cuadro de dialogo")
        self.layout.addWidget(message)
        self.layout.addWidget(self.buttonBox)
        self.setLayout(self.layout)
app = QApplication(sys.argv)

window = MainWindow()
window.show()

app.exec() 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *