Tkinter Tutorial - Buzón de mensajes

  1. Cuadro de mensaje Tkinter
  2. Ejemplo de cuadro de mensajes de Tkinter
  3. Ejemplo de cuadro de mensajes de Tkinter en la GUI

El cuadro de mensaje de Tkinter es la ventana emergente que aparece en la pantalla para darle información en texto plano o hacerle al usuario una pregunta como ¿Está seguro de salir? Sí o No?.

Cuadro de mensaje Tkinter

#!/usr/bin/python3
import tkinter as tk
from tkinter import messagebox
 
messagebox.showinfo("Basic Example", "a Basic Tk MessageBox")

Tkinter Message Box_Basic Ejemplo

from tkinter import messagebox

Necesitamos importar messagebox desde tkinter.

messagebox.showinfo("Basic Example", "a Basic Tk MessageBox")

showinfo es una de las funciones de show en messagebox. Muestra la información en la caja de mensajes, donde Basic Example es el título de la caja y a Basic Tk MessageBox es la información que se muestra.

Las funciones de visualización en el messagebox de Tkinter son,

Mostrar la función Descripción
showinfo información básica
showwarning información de alerta
showerror información de error
askquestion hacer la pregunta al usuario
askokcancel las respuestas son ok y cancel
askyesno Las respuestas son yes y no
askretrycancel Las respuestas son retry y cancel

Ejemplo de cuadro de mensajes de Tkinter

import tkinter as tk
from tkinter import messagebox
 
messagebox.showwarning("Warning Example", "Warning MessageBox")

messagebox.showerror("Error Example", "Error MessageBox")

messagebox.askquestion("Ask Question Example", "Quit?")

messagebox.askyesno("Ask Yes/No Example", "Quit?")

messagebox.askokcancel("Ask OK Cancel Example", "Quit?")

messagebox.askretrycancel("Ask Retry Cancel Example", "Quit?")

Ejemplo de cuadro de mensajes de Tkinter_Warning

Tkinter Message Box_Error Ejemplo

Tkinter Message Box_askquestion

Buzón de mensajes de Tkinter_askyesno

Tkinter Message Box_askretrycancel

Tkinter Message Box_askokcancel

Ejemplo de cuadro de mensajes de Tkinter en la GUI

Los ejemplos anteriores muestran los recuadros de mensajes para darnos una primera impresión. Pero normalmente, el cuadro de mensaje aparece después de que el usuario hace clic en un botón.

Presentaremos cómo enlazar el cuadro de mensaje con un clic de botón y la acción o comando después de que el usuario haga clic en diferentes opciones del cuadro de mensaje.

import tkinter as tk
from tkinter import messagebox

root= tk.Tk()
root.geometry('300x200')

def ExitApp():
    MsgBox = tk.messagebox.askquestion ('Exit App','Really Quit?',icon = 'error')
    if MsgBox == 'yes':
       root.destroy()
    else:
        tk.messagebox.showinfo('Welcome Back','Welcome back to the App')
        
buttonEg = tk.Button (root, text='Exit App',command=ExitApp)
buttonEg.pack()
  
root.mainloop()

Construimos la caja de mensaje en la función ExitApp() que está ligada al botón buttonEg.

if MsgBox == 'yes':

El valor de retorno de la opción en la que se ha hecho clic es yes o no en el cuadro de mensajes askquestion.

La siguiente acción podría ser cerrar la aplicación, mostrando otra caja de mensaje u otro comportamiento definido.

Tkinter Message Box_Bond to a button (Caja de mensajes de Tkinter_Ligado a un botón)