大家好!
今天要分享的是学习tkinter模块的Listbox(列表框学习)!
我们今天例子就是通过Listbox帮助我们把对应一条内容放在列表,然后点击按钮在标签显示!
我们先看看代码运行后的结果:
在选择了对应的列之后,我们只要通过点击按钮就可以把,对应列的内容显示到我们的标签上面,就比如我们的图片上的是11,点击按钮之后就把11显示在蓝色位置!!!!
这里是first也是一样!!!!
好了!
选择了对应的列之后,我们只要通过点击按钮就可以把,对应列的内容显示到我们的标签上面,就比如我们的图片上的是11,点击按钮之后就把11显示在蓝色位置!!!!
下面是完整代码:
import tkinter as tk
# 创建一个窗口对象
window = tk.Tk()
# 设置一下窗口标题
window.title("My Window")
# 设置窗口的大小
window.geometry("720x550")
# 创建Var对象
var1 = tk.StringVar()
# 设置标签
l = tk.Label(window, bg="blue", width=4, textvariable=var1)
# pack主要帮你放置在上方下方左方右方这个几个位置
l.pack()
# 设置按钮
"""解释一下对应的参数:
第一个是我们把标签安置的窗口对象;第二个呢是标签的文本内容;然后,两个分别是标签长宽高的设置单位是:
对应字体的大小的个数衡量;最后一个是执行命令的函数名"""
b1 = tk.Button(window, text="inert point ", width=15, height=2,
command=print_selection)
b1.pack()
# 定义获取对应字符的函数
def print_selection():
# lb.get(lb.curselection())是获取对应列表的字符(获得光标所选的值)
value = lb.get(lb.curselection())
# 把获取到显示在标签
var1.set(value)
var2 = tk.StringVar()
# 创建一个列表盒子对象
"""第一个参数是创建在哪个窗口上面;第二个是列表的字符;
上面已经定义var2"""
lb = tk.Listbox(window, listvariable=var2)
# 对于var2初始化的时候用set方法,但是对于下面的lb对象需要用inert方法插入
var2.set((11, 22, 33, 44))
list_items = [1, 2, 3, 4]
for k in list_items:
lb.insert("end", k)
lb.insert(1, "first")
lb.insert(2, "second")
lb.pack()
# 刷新显示
window.mainloop()
第一步创建窗口:
# 创建一个窗口对象
window = tk.Tk()
# 设置一下窗口标题
window.title("My Window")
# 设置窗口的大小
window.geometry("720x550")
# 创建Var对象
var1 = tk.StringVar()
第二步设置标签和按钮:
# 设置标签
l = tk.Label(window, bg="blue", width=4, textvariable=var1)
l.pack()
# 设置按钮
"""解释一下对应的参数:
第一个是我们把标签安置的窗口对象;第二个呢是标签的文本内容;然后,两个分别是标签长宽高的设置单位是:
对应字体的大小的个数衡量;最后一个是执行命令的函数名"""
b1 = tk.Button(window, text="inert point ", width=15, height=2,
command=print_selection)
b1.pack()
第三步创建Listbox对象并且编写插入的列表内容:
var2 = tk.StringVar()
# 创建一个列表盒子对象
"""第一个参数是创建在哪个窗口上面;第二个是列表的字符;
上面已经定义var2"""
lb = tk.Listbox(window, listvariable=var2)
# 对于var2初始化的时候用set方法,但是对于下面的lb对象需要用inert方法插入
var2.set((11, 22, 33, 44))
list_items = [1, 2, 3, 4]
for k in list_items:
lb.insert("end", k)
lb.insert(1, "first")
lb.insert(2, "second")
lb.pack()
第四步定义函数:
# 定义获取对应字符的函数
def print_selection():
# lb.get(lb.curselection())是获取对应列表的字符(获得光标所选的值)
value = lb.get(lb.curselection())
# 把获取到显示在标签
var1.set(value)
把步骤编写完成后,就可以执行了!!!
结果就和上面展示的一样了!
好了,今天的分享就这么多了,有什么不清楚或者我写错的地方,请多多指教!
私信,评论我呗!!!!!!
无论对于上班族还是学生族,今天都应该是个好日子!因为今天是周五,而且还是男生节!
虽然我之前是不知道的!!
分享一张萌图!