Mostrando las entradas con la etiqueta QDialog. Mostrar todas las entradas
Mostrando las entradas con la etiqueta QDialog. Mostrar todas las entradas

boton para confirmar una accion QDialog

necesito un ejemplo de pyqt5 con python donde al hacer click en un boton me salte una ventana para confirmar

import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton, QDialog, QVBoxLayout, QLabel class ConfirmationDialog(QDialog): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle('Confirmación') self.setGeometry(100, 100, 300, 100) layout = QVBoxLayout() label = QLabel('¿Estás seguro de continuar?') layout.addWidget(label) confirm_button = QPushButton('Confirmar') confirm_button.clicked.connect(self.accept) # Aceptar el cuadro de diálogo layout.addWidget(confirm_button) cancel_button = QPushButton('Cancelar') cancel_button.clicked.connect(self.reject) # Rechazar el cuadro de diálogo layout.addWidget(cancel_button) self.setLayout(layout) class MainWindow(QMainWindow): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setWindowTitle('Ventana Principal') self.setGeometry(100, 100, 400, 300) self.confirmation_dialog = ConfirmationDialog() confirm_button = QPushButton('Mostrar Confirmación', self) confirm_button.setGeometry(150, 100, 150, 50) confirm_button.clicked.connect(self.show_confirmation_dialog) def show_confirmation_dialog(self): result = self.confirmation_dialog.exec_() # Mostrar el cuadro de diálogo if result == QDialog.Accepted: print('Confirmado') else: print('Cancelado') if __name__ == '__main__': app = QApplication(sys.argv) main_window = MainWindow() main_window.show() sys.exit(app.exec_())

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() 

 01100110 01101001 01101110 00100000 01100100 01100101 00100000 01100011 01101111 01100100 01101001 01100111 01101111

RETURN

INDICE