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. ios之runtime

    简介 OC是从C语言发展过来的, 之所以能变为动态语言是因为runtime机制, runtime就是OC在运行时的一些机制: OC的runtime最重要的是消息机制. 在编译阶段,OC可以调用任意函数 ...

  2. 竞赛题解 - Karp-de-Chant Number(BZOJ-4922)

    Karp-de-Chant Number(BZOJ-4922) - 竞赛题解 进行了一次DP的练习,选几道题写一下博客~ 标签:BZOJ / 01背包 / 贪心 『题目』 >> There ...

  3. xtrabackup全量备份+binlog基于时间点恢复

    1.通过xtrabackup的备份恢复数据库. 2.找到start-position和binlog名称 cat xtrabackup_info 3.导出mysqlbinlog为sql文件,并确定恢复的 ...

  4. tctip打赏小插件

    tctip是一个js插件,作用是在web网页右侧生成一个打赏浮动窗 使用方法 页面使用(多数人的使用方式) 插件下载地址 第一步,引入js 一般引入min版本,即引入tctip-版本号.min.js文 ...

  5. windows下labelme的安装

    1.安装Anaconda 2.进入Anaconda文件夹下 3.输入conda create --name=labelme python=3.5 4.输入activate labelme 然后建立的l ...

  6. 支付宝H5、APP支付服务端的区别(php)

    php支付宝H5和APP支付1.准备工作需要前往 蚂蚁金服开放平台申请https://openhome.alipay.com/developmentDocument.htm 2.大致流程1.用户添加商 ...

  7. 【 es搜索】

    地图搜索实现: ①参数: 左下角经纬度和右上角经纬度 图层数(zoom) 关键字等各种数据库中的字段 排序方式 具体的坐标点+距离 ②实现 a.用es作为关系库,首先先mapping所有的字段,然后用 ...

  8. python-socket实现简单的ssh客户端

    客户端代码,监听端口号为 localhost 9999 #!/usr/local/bin/python3 # -*- coding:utf-8 -*- import socket client = s ...

  9. fake_useragent 封装好user-agent的模块

    from fake_useragent import UserAgent useragent = UserAgent()print(useragent.random)

  10. ruby 批量下载王者荣耀皮肤

    主要采用ruby Parallel库提供的多线程方式: require 'unirest' require 'open-uri' require 'parallel' require 'json' u ...