Tkinter的Menu与Messagebox

简介: 菜单控件Menu与对话框控件Messagebox

菜单控件Menu

在当前界面的左上角创建一个菜单,可创建二级菜单、三级菜单等等
具体语法:
创建一个菜单,并命名为menu

menu=tkinter.Menu(root)

创建menu菜单的列表,并命名为filemenu

filemenu=tkinter.Menu(menu,tearoff=0)

在filemenu中增加一个‘菜单’功能

menu.add_cascade(label='菜单',menu=filemenu)

创建一个一级菜单功能'保存',command为单机'保存'时触发的事件

filemenu.add_command(label='保存',command=Save)

创建一个分隔线,默认在功能'保存'下面

New_tk_tk.add_separator()   

创建一个二级菜单功能‘新建’

New_tk_tk=tkinter.Menu(filemenu,tearoff=0)
filemenu.add_cascade(label='新建',menu=New_tk_tk)

在‘新建’里面创建两个功能‘新建界面’和‘新建游戏’

New_tk_tk.add_command(label='新建界面',command=New_tk)
New_tk_tk.add_separator()   
New_tk_tk.add_command(label='新建游戏',command=None)

对话框控件Messagebox

Messagebox控件用于提示用户某个操作,方便引导用户执行下一步操作
具体函数:
创建一个提示对话框

tkinter.messagebox.showinfo('提示','hello')

创建一个警告对话框

tkinter.messagebox.showwarning('提示','有警告')

创建一个错误对话框

tkinter.messagebox.showerror('提示','出错啦')

创建一个可选择的对话框

tkinter.messagebox.askyesno('提示','确定吗')

程序设计

完整程序

import tkinter as tk
import tkinter.messagebox
root=tk.Tk()
root.title('Tkinter')
width=500
height=300
screenwidth=root.winfo_screenwidth()
screenheight=root.winfo_screenheight()
x=(screenwidth-width)//2
y=(screenheight-height)//2
root.geometry('%dx%d+%d+%d'%(width,height,x,y))
L=tk.Label(root,text='     ',bg='white',fg='blue',width=10,height=2)
L.place(x=200,y=100)
var=tk.StringVar()
def New_tk():
    tk.messagebox.showinfo('提示','创建成功!')
    new_tk=tk.Toplevel(root)
    new_tk.geometry('%dx%d+%d+%d'%(width,height,x,y))
    new_tk.title('新的界面')
def Save():
    tk.messagebox.showinfo('提示','保存成功!')
    var.set('保存成功!')
    L.config(textvariable=var)
def Quit():
    choice=tk.messagebox.askyesno('提示','确定要退出吗')
    if choice:
        var.set('退出成功!')
    else:
        var.set('退出失败!')
    L.config(textvariable=var)
menu=tk.Menu(root)
filemenu=tk.Menu(menu,tearoff=0)
editmenu=tk.Menu(menu,tearoff=0)
menu.add_cascade(label='菜单',menu=filemenu)
menu.add_cascade(label='帮助',menu=editmenu)
New_tk_tk=tk.Menu(filemenu,tearoff=0)
filemenu.add_cascade(label='新建',menu=New_tk_tk)
filemenu.add_separator()   
New_tk_tk.add_command(label='新建界面',command=New_tk)
New_tk_tk.add_separator()   
New_tk_tk.add_command(label='新建游戏',command=None)
filemenu.add_command(label='保存',command=Save)
filemenu.add_separator()   
filemenu.add_command(label='退出',command=Quit)
root.config(menu=menu)
root.mainloop() 

运行结果

1.png

目录
相关文章
|
6月前
|
Python
Python中的消息框对话框tkinter.messagebox
Python中的消息框对话框tkinter.messagebox
|
7月前
|
Shell Python
Tkinter:功能按钮Button
Tkinter:功能按钮Button
|
7月前
|
Python
tkinter之messagebox
tkinter之messagebox
32 2
|
7月前
|
Python
tkinter之Radiobutton
tkinter之Radiobutton
52 1
|
7月前
|
Python
tkinter之Combobox复选框
tkinter之Combobox复选框
177 2
|
7月前
|
Python
tkinter之Button按钮
tkinter之Button按钮
52 1
|
7月前
|
Python
tkinter之button添加背景图片
tkinter之button添加背景图片
160 1
|
7月前
|
Python
tkinter之button简单使用
tkinter之button简单使用
51 1
|
Python
Tkinter的Radiobutton控件
Tkinter的Radiobutton是一个含有多个选项的控件,但是只能选择其中的一个选项
103 0
Tkinter的Radiobutton控件
|
算法 Python
Tkinter的Label与Button
Tkinter是Python的一个内置包,主要用于简单的界面设计,使用起来非常方便。
97 0
Tkinter的Label与Button