tkinter学习scale尺度条和menu菜单

Posted ysysbky

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tkinter学习scale尺度条和menu菜单相关的知识,希望对你有一定的参考价值。

1.scale学习(尺度条)
1.1 代码:

技术图片
#第1步:导出模块
import tkinter as tk 
#第2步:定义窗口,及其标题、大小和位置
win = tk.Tk()
win.title(scale study window) #定义标题,如果未设置,就是默认tk的标题
win.geometry(600x400+500+0) #+500+0,是布局位置,500为x=由左侧水平移动500,0为y=顶点位置,往下移动0
#--------------上述格式基本固定-------------
#定义label
l=tk.Label(win,bg=pink,width=20,text=empty) #初始值是empty
l.pack()
#定义函数
def print_selection(v): #v=value=数值,scale中有一个默认的传入值
l.config(text=You have selected:+v)

#label=‘try me‘,注意不是text=‘try me‘,0.01是保留小数点后2位
#注意from后面有下划线,length=200代表200个像素,与width不一样
#to=11,可以显示11,但是to=10没能显示出10,因为tickinterval=3,每个3个刻度显示一下,改为2就可以了
#showvalue=0(False),showvalue=1(True),显示scale条上和鼠标上的数字
s=tk.Scale(win,label=try me,from_=5,to=11,orient=tk.HORIZONTAL,
length=200,showvalue=1,tickinterval=2,resolution=0.01,
command=print_selection)
s.pack()

#循环挂起
win.mainloop()
View Code

 

1.2 图1

技术图片

 

2.Menubar菜单的学习
2.1 代码:

技术图片
import tkinter as tk

win = tk.Tk() #win=window
win.title(my window)
win.geometry(800x500+500+0)

l = tk.Label(win, text=‘‘, bg=yellow,width=20,height=2) #不定义width,那默认就是一个字符串大小的宽度
l.pack()

counter = 0
def do_job():
global counter
l.config(text=do + str(counter)) #config就是改变l=label的一个参数
counter+=1

#说实话菜单设计有点麻烦,还是PySimpleGUI的简单
menubar = tk.Menu(win)
#tearoff=0,是默认值,如果不设置,就是不显示水平虚线,为1就是True,就是显示水平虚线
#filemenu和editmenu是水平并列的两个菜单按钮
filemenu = tk.Menu(menubar, tearoff=0) #第1,定义flie菜单
menubar.add_cascade(label=File, menu=filemenu)
#file菜单的子菜单
filemenu.add_command(label=New, command=do_job)
filemenu.add_command(label=Open, command=do_job)
filemenu.add_command(label=Save, command=do_job)
filemenu.add_separator() #按钮的水平分割线
filemenu.add_command(label=Exit, command=win.quit)

#定义一个三级下拉菜单
submenu = tk.Menu(filemenu) #挂在filemenu下的
#underline=0不显示下划线,为1显示下划线,不设置就是默认为0,注意是第2个字母下才有下划线
filemenu.add_cascade(label=Import, menu=submenu, underline=1)
#import的一个子菜单
submenu.add_command(label="Submenu1", command=do_job)

#------定义第2个主菜单edit----
editmenu = tk.Menu(menubar, tearoff=0) #第2,定义edit菜单
menubar.add_cascade(label=Edit, menu=editmenu)
#edit菜单的子菜单
editmenu.add_command(label=Cut, command=do_job)
editmenu.add_command(label=Copy, command=do_job)
editmenu.add_command(label=Paste, command=do_job)

win.config(menu=menubar) #config就是改变win的一个参数,将menu放在win上去

win.mainloop()
View Code

 

2.2 图2

技术图片

以上是关于tkinter学习scale尺度条和menu菜单的主要内容,如果未能解决你的问题,请参考以下文章

tkinter笔记:scale 尺度 (莫烦python笔记)

python-tkinter学习

python-tkinter学习

python-tkinter学习

Python GUI编程(Tkinter)Menu顶层菜单

Python中tkinter中控件的使用(7,Menu顶层菜单栏)