TUTORIAL · Tkinter
Tkinter Tutorial - Caixa de Mensagens
Este artigo tutorial introduz a caixa de mensagens em Python Tkinter.
Nesta página
A caixa de mensagens do Tkinter é o pop-up que aparece na tela para lhe dar informações em texto simples ou fazer ao usuário uma pergunta como Are you sure to quit? Yes or No?.
Caixa de Mensagem de Tkinter
#!/usr/bin/python3
import tkinter as tk
from tkinter import messagebox
messagebox.showinfo("Basic Example", "a Basic Tk MessageBox")
from tkinter import messagebox
Precisamos importar o messagebox de tkinter.
messagebox.showinfo("Basic Example", "a Basic Tk MessageBox")
O showinfo é uma das funções do programa em messagebox. Ela mostra a informação na caixa de mensagens, onde Basic Example é o título na caixa e a Basic Tk MessageBox é a informação mostrada.
As funções de exibição no Tkinter messagebox são,
| mostrar Função | Descrição |
|---|---|
showinfo |
simples infomartion |
showwarning |
informação de aviso |
showerror |
informação de erro |
askquestion |
fazer a pergunta do usuário |
askokcancel |
as respostas são ok e cancel |
askyesno |
as respostas são yes e no |
askretrycancel |
as respostas são try e cancel |
Exemplo de caixa de mensagens 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?")
Exemplo de caixa de mensagens Tkinter na GUI
Os exemplos acima demonstram as caixas de mensagens para nos dar a primeira impressão. Mas normalmente, a caixa de mensagens aparece depois que o usuário clica em um botão.
Vamos introduzir como ligar a caixa de mensagens com um clique de botão e a acção ou comando após o utilizador clicar em diferentes opções na caixa de mensagens.
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()
Nós construímos a caixa de mensagens na função ExitApp() que é ligar ao botão buttonEg.
if MsgBox == 'yes':
O valor de retorno da opção clicada é yes ou no na caixa de mensagem askquestion.
A seguinte ação pode ser fechar a aplicação, mostrando outra caixa de mensagem ou outro comportamento definido.