En Python, hay bibliotecas Serval para la interfaz gráfica de usuario. Tkinter es uno de ellos que es más útil. Es una interfaz estándar. Tkinter es fácil de usar y proporciona funciones de servicio para crear aplicaciones eficientes. En cada aplicación, necesitamos algún mensaje para mostrar como «¿Desea cerrar?» o que muestre alguna advertencia o algo de información. Para esto, Tkinter proporciona una biblioteca como messagebox . Al usar la biblioteca de cuadros de mensajes, podemos mostrar información de servidor, error, advertencia, cancelación, etc. en forma de cuadro de mensaje. Tiene un cuadro de mensaje Diferente para un propósito diferente.
- showinfo(): para mostrar información importante.
- showwarning() – Para mostrar algún tipo de Advertencia.
- showerror(): para mostrar algún mensaje de error.
- askquestion(): para mostrar un cuadro de diálogo que pregunta con dos opciones SÍ o NO.
- askokcancel(): para mostrar un cuadro de diálogo que pregunta con dos opciones, Aceptar o CANCELAR.
- askretrycancel(): para mostrar un cuadro de diálogo que pregunta con dos opciones REINTENTAR o CANCELAR.
- askyesnocancel(): para mostrar un cuadro de diálogo que pregunta con tres opciones SÍ, NO o CANCELAR.
Sintaxis de las funciones del cuadro de mensaje:
messagebox.name_of_function(Title, Message, [, options])
- name_of_function – Nombre de la función que queremos usar.
- Título: Título del cuadro de mensaje.
- Mensaje: mensaje que desea mostrar en el cuadro de diálogo.
- Opciones: para configurar las opciones.
Pregunta()
Esta función se utiliza para hacer preguntas al usuario. Eso tiene solo dos opciones SI o NO.
Aplicación de esta función:
- Podemos usar esto para preguntarle al usuario si desea continuar.
- Podemos usar esto para preguntarle al usuario si desea enviar o no.
Sintaxis:
messagebox.askfunction((Title, Message, [, options])
Ejemplo:
Python3
from tkinter import * from tkinter import messagebox # object of TK() main = Tk() # function to use the # askquestion() function def Submit(): messagebox.askquestion("Form", "Do you want to Submit") # setting geometry of window # instance main.geometry("100x100") # creating Window B1 = Button(main, text = "Submit", command = Submit) # Button positioning B1.pack() # infinite loop till close main.mainloop()
Producción:
1. Importación de las bibliotecas
Para utilizar la funcionalidad de la GUI en python, debemos importar las bibliotecas. En la primera línea, estamos importando Tkinter, y en la segunda línea estamos importando la biblioteca de mensajes.
from tkinter import * from tkinter import messagebox
2. Instancia de la ventana principal
Tenemos que crear una instancia u objeto para la ventana a TK(); Tk() es una función de Tkinter que crea una ventana a la que se puede hacer referencia desde la variable principal
main = Tk()
3. Establecer dimensión:
establecemos la dimensión de la ventana, podemos establecerla de varias maneras. En esto, estamos configurando mediante la función de geometría() de tamaño «100X100».
top.geometry("100x100")
4. Aplicar otro widget y función
En nuestro ejemplo, creamos un método llamado Enviar y llamamos a askquestion() y al botón de creación y lo configuramos mediante la función Pack()
def Submit(): messagebox.askquestion("Form", "Do you want to Submit") main.geometry("100x100") B1 = Button(main, text = "Submit", command = Submit) B1.pack()
5. mainloop()
Este método se puede utilizar cuando todo el código está listo para ejecutarse. Ejecuta el bucle INFINITE utilizado para ejecutar la aplicación. Se abrirá una ventana hasta que se presione el botón de cerrar.
ICONOS que podemos usar en Opciones
- Error
- Información
- Advertencia
- Pregunta
Podemos cambiar el icono del cuadro de diálogo. El tipo de ícono que queremos usar solo depende de la necesidad de la aplicación. tenemos cuatro iconos.
Error
messagebox.function_name(Title, Message, icon='error')
Ejemplo-
Python3
# illustration of icon - Error from tkinter import * from tkinter import messagebox main = Tk() def check(): messagebox.askquestion("Form", "Is your name correct?", icon ='error') main.geometry("100x100") B1 = Button(main, text = "check", command = check) B1.pack() main.mainloop()
Producción:
información
messagebox.function_name(Title, Message, icon='info')
Ejemplo-
Python3
# illustration of icon - Info from tkinter import * from tkinter import messagebox main = Tk() def check(): messagebox.askquestion("Form", "do you want to continue", icon ='info') main.geometry("100x100") B1 = Button(main, text = "check", command = check) B1.pack() main.mainloop()
Producción:
Pregunta
messagebox.function_name(Title, Message, icon='question')
Ejemplo-
Python3
# illustration of icon - question from tkinter import * from tkinter import messagebox main = Tk() def check(): messagebox.askquestion("Form", "are you 18+", icon ='question') main.geometry("100x100") B1 = Button(main, text = "check", command = check) B1.pack() main.mainloop()
Producción:
Advertencia
messagebox.function_name(Title, Message, icon='warning')
Ejemplo-
Python3
# illustration of icon - Warning from tkinter import * from tkinter import messagebox main = Tk() def check(): messagebox.askquestion("Form", "Gender is empty?", icon ='warning') main.geometry("100x100") B1 = Button(main, text = "check", command = check) B1.pack() main.mainloop()
Producción: