Python Tkinter – 列表框

Tkinter教程, 列表框部件被用来向用户显示列表项。我们可以在列表框中只放置文本项目,所有文本项目都包含相同的字体和颜色。
用户可以根据配置从列表中选择一个或多个项目 -

Python Tkinter - 列表框 语法

使用列表框的语法如下。

w = Listbox(parent, options) 

下面列出了可能的选项清单。

SN 选项 描述
1 bg 小部件的背景颜色。
2 bd 它表示边框的大小。默认值是2像素。
3 cursor 鼠标指针将看起来像光标类型,如点,箭头等。
4 font 列表框项目的字体类型。
5 fg 文字的颜色。
6 height 它代表列表框中显示的行数。默认值是10。
7 highlightcolor 当小组件处于焦点状态时,列表框项目的颜色。
8 highlightthickness 高光的厚度。
9 relief 边框的类型。默认是SUNKEN。
10 selectbackground 用于显示所选文本的背景颜色。
11 selectmode 它用于确定可以从列表中选择的项目的数量。它可以设置为BROWSE, SINGLE, MULTIPLE, EXTENDED。
12 width 它代表部件的宽度,单位是字符。
13 xscrollcommand 它是用来让用户水平滚动列表框的。
14 yscrollcommand 它是用来让用户垂直滚动列表框的。

Python Tkinter - 列表框 方法

有以下与列表框相关的方法。

SN 方法 描述
1 activate(index) 它用于选择指定索引处的行。
2 curselection() 它返回一个包含所选元素的行号的元组,从0开始计算。如果没有选择,则返回一个空元组。
3 delete(first, last = None) 它用于删除存在于给定范围内的行。
4 get(first, last = None) 它用于获取存在于给定范围内的列表项。
5 index(i) 它用于将具有指定索引的行放置在小组件的顶部。
6 insert(index, *elements) 它用于在指定的索引前插入具有指定数量元素的新行。
7 nearest(y) 它返回离列表框部件的y坐标最近的线的索引。
8 see(index) 它用于调整列表框的位置,使索引所指定的行可见。
9 size() 它返回存在于列表框部件中的行数。
10 xview() 这是用来使小部件可以水平滚动的。
11 xview_moveto(fraction) 它用于使列表框在水平方向上可滚动,其宽度为列表框中最长的一行的几分之一。
12 xview_scroll(number, what) 它用于使列表框可按指定的字符数水平滚动。
13 yview() 它使列表框可以垂直滚动。
14 yview_moveto(fraction) 它用于使列表框可垂直滚动,其宽度为列表框中最长的一行的几分之一。
15 yview_scroll (number, what) 它用于使列表框可按指定的字符数垂直滚动。

Python Tkinter - 列表框 示例1

# !/usr/bin/python3

from tkinter import *

top = Tk()

top.geometry("200x250")

lbl = Label(top,text = "A list of favourite countries...")

listbox = Listbox(top)

listbox.insert(1,"India")

listbox.insert(2, "USA")

listbox.insert(3, "Japan")

listbox.insert(4, "Austrelia")

lbl.pack()
listbox.pack()

top.mainloop()

输出:

Python Tkinter - 列表框

Python Tkinter - 列表框 示例2: 删除列表中的选中的项目

# !/usr/bin/python3

from tkinter import *

top = Tk()

top.geometry("200x250")

lbl = Label(top,text = "A list of favourite countries...")

listbox = Listbox(top)

listbox.insert(1,"India")

listbox.insert(2, "USA")

listbox.insert(3, "Japan")

listbox.insert(4, "Austrelia")

#this button will delete the selected item from the list 

btn = Button(top, text = "delete", command = lambda listbox=listbox: listbox.delete(ANCHOR))

lbl.pack()

listbox.pack()

btn.pack()
top.mainloop()

输出:

Python Tkinter - 列表框

按下删除按钮后。

Python Tkinter - 列表框

赞(1)
未经允许不得转载:极客笔记 » Python Tkinter – 列表框

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址