Resumo : neste tutorial, você aprenderá como usar a askokcancel()
função Tkinter para mostrar uma caixa de diálogo de confirmação.
Introdução à função askokcancel() do Tkinter
A askokcancel()
função mostra uma caixa de diálogo de confirmação que possui dois botões: OK
e Cancel
.
answer = askokcancel(title, message, **options)
Linguagem de código: Python ( python )
Se você clicar no OK
botão, a função retornará True
. Porém, se você clicar no Cancel
botão, a função retornará False
.
Exemplo de askokcancel() do Tkinter
O programa a seguir mostra um botão Excluir tudo . Se você clicar no botão, o programa mostrará uma caixa de diálogo de confirmação que possui dois botões: OK
e Cancel
.
Se você clicar no OK
botão, o programa mostrará uma caixa de mensagem indicando que todos os dados foram excluídos com sucesso:
O programa:
import tkinter as tk
from tkinter import ttk
from tkinter.messagebox import askokcancel, showinfo, WARNING
# create the root window
root = tk.Tk()
root.title('Tkinter Ok/Cancel Dialog')
root.geometry('300x150')
# click event handler
def confirm():
answer = askokcancel(
title='Confirmation',
message='Deleting will delete all the data.',
icon=WARNING)
if answer:
showinfo(
title='Deletion Status',
message='The data is deleted successfully')
ttk.Button(
root,
text='Delete All',
command=confirm).pack(expand=True)
# start the app
root.mainloop()
Linguagem de código: Python ( python )
O programa a seguir faz o mesmo que o programa acima, mas usa a abordagem de programação orientada a objetos:
import tkinter as tk
from tkinter import ttk
from tkinter.messagebox import askokcancel, showinfo, WARNING
class App(tk.Tk):
def __init__(self):
super().__init__()
self.title('Tkinter Ok/Cancel Dialog')
self.geometry('300x150')
delete_button = ttk.Button(
self,
text='Delete All',
command=self.confirm)
delete_button.pack(expand=True)
def confirm(self):
answer = askokcancel(
title='Confirmation',
message='Deleting will delete all the data.',
icon=WARNING)
if answer:
showinfo(
title='Deletion Status',
message='The data is deleted successfully')
if __name__ == "__main__":
app = App()
app.mainloop()
Linguagem de código: Python ( python )
Resumo
- Use a
askokcancel()
função Tkinter para exibir uma caixa de diálogo de confirmação com dois botõesOK
eCancel
. - A
askokcancel()
função retornaTrue
se você clicar noOK
botão eFalse
se você clicar noCancel
botão.