用户:
创新喵查看:0 回复:1 评论:0 创建时间:2020-03-17T13:00:49
大家好,我是创新喵,今天,我们来学习tk库(1)![]()
我会用我的参赛作品来讲解:
(tk窗口)
import tkinter as tk
from tkinter.messagebox import *
window = tk.Tk()
window.title('菜单栏')
window.geometry('400x300')
# 创建标签,用于显示内容
l = tk.Label(window, bg='green', width=25, height=2, text='empty')
l.pack()
# 下方command参数的do_job函数
counter = 0
def do_job():
global counter
l.config(text='do'+str(counter))
counter += 1
def png():
label=tk.Label(window, text="图片库里没有png,请下载",font=("宋体", 13, "bold")).place(x=0,y=100)
def gif():
label=tk.Label(window, text="未知错误,无法打开GIF。",font=("宋体", 13, "bold")).place(x=0,y=100)
def messagebox1():
showinfo(title='名字', message='本电脑叫“新世纪的电脑”')
def messagebox2():
showinfo(title='位数', message='本电脑是62位的')
def shangwang1():
swdr = tk.Tk()
swdr.title('上网达人')
window.geometry('500x600')
label=tk.Label(swdr, text="网络已崩溃",font=("宋体", 13, "bold")).place(x=0,y=100)
# 创建一个菜单栏,这里我们可以把它理解成一个容器,在窗口的上方
menubar = tk.Menu(window)
# 定义一个空的菜单单元
filemenu = tk.Menu(menubar, tearoff=0) # tearoff意为下拉
# 将上面定义的空菜单命名为`File`,放在菜单栏中,就是装入那个容器中
menubar.add_cascade(label='文件', menu=filemenu)
# 在`文件`中加入`新建`的小菜单,即我们平时看到的下拉菜单,每一个小菜单对应命令操作。
# 如果点击这些单元, 就会触发`do_job`的功能
filemenu.add_command(label='新建', command=do_job)
filemenu.add_command(label='打开', command=do_job)
filemenu.add_command(label='保存', command=do_job)
# 分隔线
filemenu.add_separator()
filemenu.add_command(label='退出', command=window.destroy)
# 创建编辑菜单
editmenu = tk.Menu(menubar, tearoff=0)
menubar.add_cascade(label='编辑', menu=editmenu)
editmenu.add_command(label='剪切', command=do_job)
editmenu.add_command(label='复制', command=do_job)
editmenu.add_command(label='粘贴', command=do_job)
# 在‘文件’下拉菜单中创建二级菜单
submenu = tk.Menu(filemenu)
filemenu.add_cascade(label='导入', menu=submenu, underline=0)
dao = tk.Menu(filemenu)
submenu.add_cascade(label='导入图片',menu=dao, underline=0)
dao.add_command(label = 'png',command=png)
dao.add_separator()
dao.add_command(label="gif",command = gif)
xiong = tk.Menu(filemenu,tearoff=0)
menubar.add_cascade(label='系统', menu=xiong)
xiong.add_command(label = '名字',command=messagebox1)
xiong.add_command(label = '位数',command=messagebox2)
sw = tk.Menu(menubar, tearoff=0)
menubar.add_cascade(label='上网',menu=sw,underline=0)
sw.add_command(label='网络达人:书籍', command=shangwang1)
window.config(menu=menubar) # 加上这代码,才能将菜单栏显示
window.mainloop()
很乱吧!接下来我们来看一下代码的结构
import tkinter as tk
from tkinter.messagebox import *
导入Tk库