Python基础知识-GUI编程-TK-Listbox

[color=blue][b]1、Item选项[/b][/color]

Item的选项是通过listvariable属性进行设置,将一个tuples变量赋值给listvariable即可。见下面的代码:


tnames = ['python','TCL','ruby']
cnames = StringVar()
cnames.set(tuple(tnames))
Listbox(root, listvariable = cnames, width = 100).grid()

列出的选项是python,TCL,ruby

[color=blue][b]2、Item选项的选择模式[/b][/color]

Item选项可以有两种选择模式,一种是单选,一种是多选;默认是单选。
设置的属性是 selectmode, 值 browse 是单选, 值 extended 是多选。例如:

Listbox(root, listvariable = cnames, width = 100, [color=red]selectmode = "extended"[/color]).grid()

[color=blue][b]3、获取当前的选择项[/b][/color]

可以通过curselection函数获取当前的item index,然后通过get函数获取对应的选项名称。代码如下:


def changeItems():
[color=red] indexs = l.curselection()
for i in range(len(indexs)):
print l.get(indexs[i])[/color]

root = Tkinter.Tk()
root.geometry('+400+200')
root.minsize(400,200)
root.title("test")

tnames = ['python','TCL','ruby']
cnames = StringVar()
cnames.set(tuple(tnames))
l = Listbox(root, listvariable = cnames, width = 100, selectmode = "extended")
l.grid()

ttk.Button(root,text = "submit",command = changeItems).grid()

root.mainloop()

[color=blue][b]4、可选择的Item的变化
[/b][/color]
[color=red]第一种方式,是整体的方式,就是变更listvariable对应的变量list[/color]。这个的好处是,可以完全使用list熟悉的处理方式来处理listbox的items。具体代码如下,点击submit按钮之后,可选的item增加了一个'java':


def changeItems():
[color=red] tnames.append('java')
cnames.set(tuple(tnames))
[/color]
root = Tkinter.Tk()
root.geometry('+400+200')
root.minsize(400,200)
root.title("test")

[color=red]tnames = ['python','TCL','ruby']
cnames = StringVar()
cnames.set(tuple(tnames))
[/color]Listbox(root, listvariable = cnames,height = 10).grid()

ttk.Button(root,text = "submit",command = changeItems).grid()

root.mainloop()

[color=red]第二种方式,是利用listbox提供的item增删插入等函数进行变更[/color],包含:insert、delete。从目前我个人的使用方式来看,似乎没有用到这些函数的必要性,所以暂时就不做介绍了。如果后续有,则再介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值