这篇文章主要讲解了“Tkinter列表框控件Listbox怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Tkinter列表框控件Listbox怎么使用”吧!
首先是构建Listbox控件并添加列表项:
# create a listbox for demo.
lb = Listbox(root,
activestyle='dotbox',
bg="#ffffa0",fg="#ff0000",
disabledforeground="#3f3f3f",
highlightbackground="#0000ff",
font=ftiTimes,
height=10, width=20)
# add items
for i in range(0,20):
lb.insert(END, str(i))
列表框控件并没有提供command属性用来指定事件处理函数,这里使用绑定《ListboxSelect》事件来实现。事件处理的内容通过lambda表达式来指定,这样可以避免实现一个只用一次而且过于简单的函数。
# bind eventlb.bind('<<ListboxSelect>>', lambda e: label.config(text=str(lb.curselection())))lb.grid(row=0, column=0, columnspan=3, sticky=W+E)
构建3个Spinbox控件,分别用于修改有效/无效、选中项表示方式和选择方式属性。
# create a Spinbox to change state.
st_spin = Spinbox(root,
values=('normal', 'disabled'),
state='readonly',
command=lambda:lb.config(state=st_spin.get()))
st_spin.grid(row=1, column=0, columnspan=1, sticky=W)
# create a Spinbox to change activestyle.
as_spin = Spinbox(root,
values=('dotbox', 'underline', 'none'),
state='readonly',
command=lambda:lb.config(activestyle=as_spin.get()))
as_spin.grid(row=1, column=1, columnspan=1, sticky=W)
# create a Spinbox to change select mode.
sm_spin = Spinbox(root,
values=('browse', 'single', 'multiple', 'extended'),
state='readonly',
command=lambda:lb.config(selectmode=sm_spin.get()))
sm_spin.grid(row=1, column=2, columnspan=1, sticky=W)
最后构建一个用于表示选中内容的标签。
label=Label(root)label.grid(row=2, column=0, columnspan=4)
感谢各位的阅读,以上就是“Tkinter列表框控件Listbox怎么使用”的内容了,经过本文的学习后,相信大家对Tkinter列表框控件Listbox怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
原创文章,作者:3628473679,如若转载,请注明出处:https://blog.ytso.com/220228.html