列表框窗口小部件用于向用户显示列表项。我们只能在列表框中放置文本项, 并且所有文本项都包含相同的字体和颜色。
用户可以根据配置从列表中选择一项或多项。
【Python Tkinter列表框用法示例】下面列出了使用列表框的语法。
w = Listbox(parent, options)
下面列出了可能的选项。
SN | Option | Description |
---|---|---|
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 | 它用于让用户垂直滚动列表框。 |
SN | Method | Description |
---|---|---|
1 | activate(index) | 用于选择指定索引处的行。 |
2 | curselection() | 它返回一个元组, 该元组包含从0开始计数的所选元素的行号。如果未选择任何内容, 则返回一个空的元组。 |
3 | delete(first, last = none) | 用于删除给定范围内的行。 |
4 | get(first, last = None) | 它用于获取给定范围内存在的列表项。 |
5 | index(i) | 它用于将具有指定索引的行放置在窗口小部件的顶部。 |
6 | 插入(索引, *元素) | 它用于在指定的索引之前插入具有指定数量的元素的新行。 |
7 | nearest(y) | 它将最近的行的索引返回到Listbox小部件的y坐标。 |
8 | see(index) | 它用于调整列表框的位置, 以使索引指定的行可见。 |
9 | size() | 它返回列表框窗口小部件中存在的行数。 |
10 | xview() | 这用于使窗口小部件水平滚动。 |
11 | xview_moveto(fraction) | 它用于使列表框在水平方向上滚动列表框中存在的最长行的宽度的分数。 |
12 | xview_scroll(数字, 什么) | 它用于使列表框按指定的字符数水平滚动。 |
13 | yview() | 它允许列表框垂直滚动。 |
14 | yview_moveto(fraction) | 它用于使列表框垂直滚动, 滚动长度为列表框中存在的最长行的宽度的一部分。 |
15 | yview_scroll(数字, 什么) | 它用于使列表框垂直滚动指定的字符数。 |
# !/usr/bin/python3from 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()
输出
文章图片
示例2:从列表中删除活动项目
# !/usr/bin/python3from 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菜单用法介绍
- Tkinter LabelFrame小部件用法例子
- Python Tkinter标签用例
- Python Tkinter Entry小部件用法例子
- Python Tkinter Frame小部件用法例子
- Go语言进阶很简单(深入理解 Go 中的字符串)
- 跳频电台的设计与测试挑战
- redis复制和故障转移
- kettle庖丁解牛第28篇之oracle数据迁移到mysql库