这篇文章主要讲解了“Python的Ttk库怎么用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python的Ttk库怎么用”吧!
本文说明Ttk库中菜单按钮Menubutton、进度条Progressbar和组合列表框Combobox的用法。
首先是菜单按钮Menubutton。代码中只是简单构建了一个退出菜单。
menu = Menubutton(root, text="File")menu.grid(row=0, column=0, sticky=W)file_menu = Menu(menu, tearoff=0)menu.config(menu=file_menu)file_menu.add_command(label="Exit", command=exit)
接下来是进度条控件Progressbar。
p_value = IntVar()
p_value.set(0)
progress = Progressbar(root, maximum=100, variable=p_value)
progress.grid(row=1, column=0, columnspan=3, sticky='ew')
def on_timer():
if p_value.get() < progress.cget('maximum'):
p_value.set(p_value.get() + 1)
else:
timer.stop()
timer=Timer(root, 100, on_timer)
进度条的最大值固定为100,值变量指定为p_value。当p_value的值发生改变时,进度表也会随之更新,反之亦然。
on_timer的内容是每次将p_value的值加1,直至Progressbar的最大值为止。on_timer会在被定时器timer周期性调用。
再往下是Combobox关联代码:
c_var = StringVar()
c_var.set(str(timer.get_timer()))
def t_changed(*args):
timer.set_timer(int(c_var.get()))
c_var.trace_variable('w', t_changed)
time_values=['50', '100', '200']
c_box = Combobox(root, values=time_values, textvariable=c_var, state='readonly')
c_box.grid(row=2, column=0)
首先构造一个字符串变量并将其初始化为定时器的定时时长。接下来为这个变量设定一个监视函数,以便根据变量值修改定时器的定时时长。最后构建一个Combobox对象。这样一来,当用户选择不同的数值时,该数值会通过c_var变量间接设定给定制器timer的定时时长。
开始和停止按钮就简单了:
start_btn = Button(root, text='Start', command=timer.start)
start_btn.grid(row=2, column=1)
def stop_timer():
timer.stop()
p_value.set(0)
stop_btn = Button(root, text='Stop', command=stop_timer)
stop_btn.grid(row=2, column=2)
感谢各位的阅读,以上就是“Python的Ttk库怎么用”的内容了,经过本文的学习后,相信大家对Python的Ttk库怎么用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。