当前位置: 首页 > 最新文章 > 正文

PythonGUI编程入门(15)-列表框控件Listbox

列表框控件作为一种常用的选择控件,可以用来实现单选或者多选功能。事件处理的内容通过lambda表达式来指定,这样可以避免实现一个只用一次而且过于简单的函数。# bind eventlb.bindlb.grid构建3个Spinbox控件,分别用于修改有效/无效、选中项表示方式和选择方式属性。# create a Spinbox to change state.st_spin = Spinboxst_

admin

列表框控件作为一种常用的选择控件,可以用来实现单选或者多选功能。事件处理的内容通过lambda表达式来指定,这样可以避免实现一个只用一次而且过于简单的函数。# bind eventlb.bindlb.grid构建3个Spinbox控件,分别用于修改有效/无效、选中项表示方式和选择方式属性。# create a Spinbox to change state.st_spin = Spinboxst_spin.grid# create a Spinbox to change activestyle.as_spin = Spinboxas_spin.grid# create a Spinbox to change select mode.sm_spin = Spinboxsm_spin.grid最后构建一个用于表示选中内容的标签。label=Labellabel.grid完整代码可以从下面的链接下载:https://github.com/xueweiguo/TkinterPrimer/blob/master/Sample/15%20Listbox.py觉得本文有帮助?请分享给更多人。面向对象设计,面向对象编程,面向对象思考!

PythonGUI编程入门(15)-列表框控件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 itemsfor 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)

完整代码可以从下面的链接下载:

https://github.com/xueweiguo/TkinterPrimer/blob/master/Sample/15%20Listbox.py


觉得本文有帮助?请分享给更多人。

关注【面向对象思考】,轻松学习每一天!

面向对象设计,面向对象编程,面向对象思考!


上一篇: 天津市政协委员沈欣:鼓励农民“家门口”创业,多举措增加收入 下一篇:C#.NET Core控制台应用程序Write()和WriteLine()详细使用和区分
返回顶部