基于tkinter弹出不同类型对话框

本博文元基于python的tkinter.messagebox模块中的askocancel、askquestion、askyesno、showerror、showinfo、showwarning建立简单的消息框。如果弹出需要传递title于message参数。

实验效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验原理

首先创建按钮消息处理函数,然后将其绑定到按钮与主窗口中。开始点击然后依次弹出。

实验代码

# -*- coding:utf-8 -*-
import tkinter
import tkinter.messagebox
def cmd():
    global n
    global buttontext
    n += 1
    if n == 1:
        tkinter.messagebox.askokcancel('我是消息框','askokcancel')
        buttontext.set('skquestion')
    elif n == 2:
        tkinter.messagebox.askquestion('我是消息框', 'askquestion')
        buttontext.set('askyesno')
    elif n == 3:
        tkinter.messagebox.askyesno('我是消息框', 'askyesno')
        buttontext.set('showerror')
    elif n == 4:
        tkinter.messagebox.showerror('我是消息框', 'showerror')
        buttontext.set('showinfo')
    elif n == 5:
        tkinter.messagebox.showinfo('我是消息框', 'showinfo')
        buttontext.set('showwarnning')
    else:
        n == 0
        tkinter.messagebox.showwarning('我是消息框', 'showwarning')
        buttontext.set('askokcancel')

if __name__ == '__main__':
    n = 0
    root = tkinter.Tk()
    buttontext = tkinter.StringVar()
    buttontext.set('askokcancel')
    button = tkinter.Button(root,textvariable=buttontext,command = cmd)
    button.pack()
    root.mainloop()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章