tkinter的listbox、radiobutton和checkbutton学习(2)
1.tkinter的listbox
1.1 代码
#第1步,导出模块
import tkinter as tk
#定义窗口,及其标题、大小和位置
win = tk.Tk()
win.title('Listbox study window') #定义标题,如果未设置,就是默认tk的标题
win.geometry('600x400+500+0') #+500+0,是布局位置,500为x=由左侧水平移动500,0为y=顶点位置,往下移动0
#定义v=var=variable=变量
v1=tk.StringVar()
#label标签设置
l=tk.Label(win,bg='pink',width=20,height=2,textvariable=v1)
l.pack()
#定义函数
def print_selection():
value=lb.get(lb.curselection()) #lb.curselection()是listbox的一个cur(光标)selection(选择)
v1.set(value)
#按钮设置
b1=tk.Button(win,text='print selection',width=15,height=2,command=print_selection)
b1.pack()
#定义v2变量
v2=tk.StringVar()
#v2.set((11,222,3333,444,55555)) #新加入的列表值
v2.set(('我','大家','美丽风景','万里长城永不倒')) #里面是元组(),可以是数字或字符串 lb=tk.Listbox(win,listvariable=v2) #定义lb为listbox
lb.pack() lsit_items=[1,2,3,4] #原本list_box列表里面的数字,初始化列表里面有内容
#往listbox内添加内容的方法一
for item in lsit_items:
lb.insert('end',item) #insert函数的‘end’,以及加入的内容
#往listbox内添加内容的方法二
lb.insert(1,'first')
lb.insert(2,'second')
lb.delete(2) #删除序列2的内容 win.mainloop()
1.2 图1

2.radiobutton学习
2.1 代码
#第1步:导出模块
import tkinter as tk
#第2步:定义窗口,及其标题、大小和位置
win = tk.Tk()
win.title('radiobutton study window') #定义标题,如果未设置,就是默认tk的标题
win.geometry('600x400+500+0') #+500+0,是布局位置,500为x=由左侧水平移动500,0为y=顶点位置,往下移动0
#上述格式基本固定
#定义v=var=variable=变量
v=tk.StringVar()
#label标签设置
l=tk.Label(win,bg='pink',width=20,height=2,text='empty')
l.pack()
#定义command的选择命令
def print_selection():
l.config(text='you have selected: '+v.get()) #重点学习l=label的config函数和v=variable变量的get函数
#radiobutton的设置
r1=tk.Radiobutton(win,text='Option A',variable=v,value='A',command=print_selection)
r1.pack()
r2=tk.Radiobutton(win,text='Option B',variable=v,value='B',command=print_selection)
r2.pack()
r3=tk.Radiobutton(win,text='Option C',variable=v,value='C',command=print_selection)
r3.pack()
#循环挂起
win.mainloop()
2.2 图2

3.checkbutton的学习
3.1 代码:
#第1步:导出模块
import tkinter as tk
#第2步:定义窗口,及其标题、大小和位置
win = tk.Tk()
win.title('Checkbutton study window') #定义标题,如果未设置,就是默认tk的标题
win.geometry('600x400+500+0') #+500+0,是布局位置,500为x=由左侧水平移动500,0为y=顶点位置,往下移动0
#上述格式基本固定
#定义v=var=variable=变量
v=tk.StringVar()
#label标签设置
l=tk.Label(win,bg='pink',width=20,height=2,text='empty') #也可以设置初始值是text='',即没有内容输出
l.pack()
#定义command的选择命令
def print_selection():
if (v1.get()==1) & (v2.get()==0):
l.config(text='I love Python')
elif (v1.get()==0) & (v2.get()==1):
l.config(text='I love C++')
#方法一
elif (v1.get()==1) & (v2.get()==1):
l.config(text='I love both')
else:
l.config(text='I donot love either') '''
#方法二
elif (v1.get()==0) & (v2.get()==0):
l.config(text='I donot love either')
else:
l.config(text='I love both')
'''
#定义checkbutton的变量和按钮设置,位置
v1=tk.IntVar()
cb1=tk.Checkbutton(win,text='Python',variable=v1,onvalue=1,offvalue=0,command=print_selection)
cb1.pack()
#定义二
v2=tk.IntVar()
cb2=tk.Checkbutton(win,text='C++',variable=v2,onvalue=1,offvalue=0,command=print_selection)
cb2.pack()
#注意由于cb1和cb2(cb=checkbutton)的text的内容字符串长度不一致,故显示感觉1和2位置不是左边垂直对齐
#可以如下设置
#text='C++ '增加其内的字符串空格代替 #循环挂起
win.mainloop()
3.2 图3

tkinter的listbox、radiobutton和checkbutton学习(2)的更多相关文章
- Tkinter教程之Radiobutton篇
本文转载自:http://blog.csdn.net/jcodeer/article/details/1811308 #Tkinter教程之Radiobutton篇#Radiobutton为单选按钮, ...
- 背水一战 Windows 10 (33) - 控件(选择类): ListBox, RadioButton, CheckBox, ToggleSwitch
[源码下载] 背水一战 Windows 10 (33) - 控件(选择类): ListBox, RadioButton, CheckBox, ToggleSwitch 作者:webabcd 介绍背水一 ...
- JQuery对RadioButton和CheckButton的操作
js对RadioButton和CheckButton的操作,在网站开发中会经常遇到,而JQuery操作RadioButton和CheckButton非常便捷.小编觉得网站开发人员有必要熟练掌握.所以小 ...
- Python3 tkinter基础 Listbox height 显示行数的上限
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Listbox Scrollbar 创建垂直滚动条
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Listbox delete 删除单个、所有元素
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Listbox for+insert 将list中元素导入listbox中
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 Listbox Button 点击按钮删除选中的单个元素
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3 tkinter基础 LabelFrame Radiobutton 形成两组不相互限制的单选按钮
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
随机推荐
- 等差数列Arithmetic Progressions题解(USACO1.4)
Arithmetic Progressions USACO1.4 An arithmetic progression is a sequence of the form a, a+b, a+2b, . ...
- nginx配置访问黑名单-2
在Nginx服务器上屏蔽IP 1.查找要屏蔽的ip awk '{print $1}' nginx.access.log |sort |uniq -c|sort -n nginx.access.log ...
- AAC Joint coding
1. M/S stereo M/S stereo 作用于channel pair. channel pair对于listener来说通常具有对称性,即第一个channel和第二个channel相似性较 ...
- Oracle中的数据迁移到Mysql数据库中的方式Navicat premium工具
1.安装 Navicat premium工具 2.破解 Navicat premium工具 3.连接需要相互迁移的两个库Mysql和Oracle(可以是远程的或者本机的数据库都是可以的) 4.连接上之 ...
- STA之PVT
在STA星球,用library PVT.RC corner跟OCV来模拟这些不可控的随机因素.在每个工艺结点,通过大量的建模跟实测,针对每个具体的工艺,foundary厂都会提供一张推荐的timing ...
- 一起了解 .Net Foundation 项目 No.4
.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. BenchmarkDotN ...
- Redis07——Redis五大数据类型 set
set Redis中set可以自动排重(不会出现重复数据),提供了判断某个成员是否在一个set集合内的重要接口(list没有此功能) 无序集合,底层是一个value为null的hash表,添加.删除. ...
- sql 中联合查询语句
在查询语句中 两张表进行查询,可以通过 left join (左连接查询) :返回左表中的所有记录和右表中联结字段相等的记录 (意思就是左表中的数据会全部显示,右表中只会显示和左表中相等的字段) r ...
- 【Python】一些函数
Python 数字类型转换 有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可. int(x) 将x转换为一个整数. float(x) 将x转换到一个浮点数. ...
- Linux挂载(mount,umount及开机自动挂载
挂载概念简述: 根文件系统之外的其他文件要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”,此目录即为“挂载点”,解除此关联关系的过程称之为“卸载” 1.挂载:根 ...