1.创建

from tkinter import *

root=Tk()

lb=Listbox(root)
for item in ['python','tkinter','widget']:
    lb.insert(END,item)
lb.pack()

root.mainloop()

2.多选

lb=Listbox(root,selectmode=MULTIPLE)
from tkinter import *

root=Tk()

lb=Listbox(root,selectmode=EXTENDED)
for item in ['python','tkinter','widget']:
    lb.insert(END,item)
lb.pack()

root.mainloop()

可以按住Shift或者Control

3.鼠标移动选中

lb=Listbox(root,selectmode=BROWSE)

默认就是这种情况

4.鼠标移动不选中

lb=Listbox(root,selectmode=SINGLE)

5.添加item

lb.insert(ACTIVE,'linux','windows','unix')

0向起始位置插入

END向结尾位置插入

ACTIVE当前元素位置为索引

6.删除item

lb.delete(1,1)

删除全部item

lb.delete(0,END)

7.选中和取消选中

lb.selection_set(0,10)
lb.selection_clear(1,3)

第一个参数是开始位置,第二个参数是结束位置

8.item个数

print(lb.size())

9.返回当前选中的item的索引

print(lb.curselection())

10.判断一个items是否被选中

lb.selection_set(3,2)
print(lb.selection_includes(1))
print(lb.selection_includes(3))

11.绑定变量

from tkinter import *

root=Tk()
v=StringVar()

lb=Listbox(root,listvariable=v)
for item in ['python','tkinter','widget']:
    lb.insert(END,item)

lb.insert(ACTIVE,'linux','windows','unix')
print(v.get())
v.set(('1000','200'))

lb.pack()

root.mainloop()

v.get()打印出所有item的值

v.set(()使用元组的形式改变了item的值和个数

12.事件绑定

from tkinter import *

root=Tk()

def printList(event):
    print(lb.get(lb.curselection()))

lb=Listbox(root)
lb.bind('<Double-Button-1>',printList)
for i in range(10):
    lb.insert(END,str(i*100))

lb.pack()

root.mainloop()

双击数字会打印文本

事件可以参考

https://www.cnblogs.com/wumac/p/5842393.html
 

Python3 Tkinter-Listbox的更多相关文章

  1. Tkinter Listbox(列表框)

    Python - Tkinter Listbox(列表框): 列表框部件用于显示一个项目列表,用户可以选择的项目数   列表框部件用于显示一个项目列表,用户可以选择的项目数. 语法: 这里是一个简单的 ...

  2. python3+tkinter实现的黑白棋,代码完整 100%能运行

    今天分享给大家的是采用Python3+tkinter制作而成的小项目--黑白棋 tkinter是Python内置的图形化模块,简单易用,一般的小型UI程序可以快速用它实现,具体的tkinter相关知识 ...

  3. Python3 tkinter基础 Listbox height 显示行数的上限

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  4. Python3 tkinter基础 Listbox Scrollbar 创建垂直滚动条

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  5. Python3 tkinter基础 Listbox delete 删除单个、所有元素

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  6. Python3 tkinter基础 Listbox for+insert 将list中元素导入listbox中

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  7. Python3 tkinter基础 Listbox Button 点击按钮删除选中的单个元素

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  8. python3 tkinter模块

    一.tkinter 1.tkinter--tool kit interface工具包接口,用于GUI(Graphical User Interface)用户图形界面, 2.python3.x把Tkin ...

  9. python3 tkinter添加图片和文本

    在前面一篇文章基础上,使用tkinter添加图片和文本.在开始之前,我们需要安装Pillow图片库. 一.Pillow的安装 1.方法一:需要下载exe文件,根据下面图片下载和安装       下载完 ...

  10. python tkinter Listbox用法

    python tkinter组件的Listbox的用法,见下面代码的演示: from tkinter import * root=Tk() v=StringVar() #Listbox与变量绑定' l ...

随机推荐

  1. JavaScript基础部分经典案例

    再复杂的程序都是由一个个简单的部分组成. 001案例 - 交换两个变量的值 方法01 - 使用临时变量 var n1 = 5; var n2 = 6; // 创建一个临时中介变量 tmp var tm ...

  2. nopCommerce电子商务平台 安装教程(图文)

    nopCommerce是一个通用的电子商务平台,适合每个商家的需要:它强大的企业和小型企业网站遍布世界各地的公司销售实体和数字商品.nopCommerce是一个透明且结构良好的解决方案,它结合了开源和 ...

  3. GIT更新一其中一个提交版本

    有一小朋友刚才SVN转到GIT,最近老是咨询怎么才svn update -rXXXXX 在git其实也不麻烦,就是git checkout的事情,不管是分支还是TAG,都会有一个HASH版本号 1. ...

  4. Plugin 'InnoDB' registration as a STORAGE ENGINE failed

    今天在安装mysql时遇到了mysql服务打不开的的情况,通过在cmd中输入MySQL --console,显示错误信息,得到如下情况. 原因是InnoDB初始化异常,也就是是说,卸载mysql的时候 ...

  5. centos7安装ftp

    1.服务器初始化检查 检查selinux,firewall,iptables是否开启 1.查看selinux的运行状态 [root@zeq ~] getenforce Disabled 我的现在是关闭 ...

  6. 异常笔记:Hadoop异常 namenode.NameNode: Encountered exception during format

    00:53:47,977 WARN namenode.NameNode: Encountered exception during format: java.io.IOException: Canno ...

  7. 关于mybatis编写sql问题.

    最近呢楼主回到长沙进行面试:被问了一个这样的问题,在mybatis中怎么进行模糊查询,望各位大佬在下方进行评论,好让我这菜鸡多学习一些.

  8. jquery--DOM操作基础

    元素的访问 元素属性操作 获取:attr(name):$("#my").attr("src"); 设置:attr(name,value):$("#my ...

  9. JavaScript 中 Property 和 Attribute 的区别详解

    property 和 attribute非常容易混淆,两个单词的中文翻译也都非常相近(property:属性,attribute:特性),但实际上,二者是不同的东西,属于不同的范畴. property ...

  10. 【C】关键字void的用法

    void有两种功能 [1]没有 [2]任意类型 void出现的位置不同会有不同的解释 [1]void func( void ) func左边的void,代表『没有返回值』 func右边的括弧里的voi ...