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)的更多相关文章

  1. Tkinter教程之Radiobutton篇

    本文转载自:http://blog.csdn.net/jcodeer/article/details/1811308 #Tkinter教程之Radiobutton篇#Radiobutton为单选按钮, ...

  2. 背水一战 Windows 10 (33) - 控件(选择类): ListBox, RadioButton, CheckBox, ToggleSwitch

    [源码下载] 背水一战 Windows 10 (33) - 控件(选择类): ListBox, RadioButton, CheckBox, ToggleSwitch 作者:webabcd 介绍背水一 ...

  3. JQuery对RadioButton和CheckButton的操作

    js对RadioButton和CheckButton的操作,在网站开发中会经常遇到,而JQuery操作RadioButton和CheckButton非常便捷.小编觉得网站开发人员有必要熟练掌握.所以小 ...

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

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

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

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

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

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

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

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

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

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

  9. Python3 tkinter基础 LabelFrame Radiobutton 形成两组不相互限制的单选按钮

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

随机推荐

  1. 题解【loj537】「LibreOJ NOIP Round #1」DNA 序列

    题目描述 \(NOIP\)复赛之前\(HSD\)桑进行了一项研究,发现人某条染色体上的一段\(DNA\)序列中连续的\(k\)个碱基组成的碱基序列与做题的 \(AC\) 率有关!于是他想研究一下这种关 ...

  2. php 利用debug_backtrace方法跟踪代码调用

    在开发过程中,例如要修改别人开发的代码或调试出问题的代码,需要对代码流程一步步去跟踪,找到出问题的地方进行修改.如果有一个方法可以获取到某段代码是被哪个方法调用,并能一直回溯到最开始调用的地方(包括调 ...

  3. (转)Java中的String与常量池

    Java中的String与常量池 转自:http://developer.51cto.com/art/201106/266454.htm string是java中的字符串.String类是不可变的,对 ...

  4. Oracle中的数据迁移到Mysql数据库中的方式Navicat premium工具

    1.安装 Navicat premium工具 2.破解 Navicat premium工具 3.连接需要相互迁移的两个库Mysql和Oracle(可以是远程的或者本机的数据库都是可以的) 4.连接上之 ...

  5. Codeforces C. Almost Equal (数学规律)

    题目链接:http://codeforces.com/contest/1206/problem/C 题解 : 观察可以发现当n为偶数时,1 - 2n是不满足题意的,可以举例n = 2,n = 4试一试 ...

  6. JS生成简单随机答案选择器,小抽奖器

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. 第十七篇 Linux下常用命令汇总

  8. 浅谈对Jquery+JSON+WebService的使用小结

    https://www.jb51.net/article/36207.htm  更新时间:2013年04月28日 12:19:55   作者:    我要评论   本篇文章介绍了对Jquery+JSO ...

  9. 消息队列(七)--- RocketMQ延时发送和消息重试(半原创)

    本文图片和部分总结来自于参考资料,半原创,侵删 问题 Rocketmq 重试是否有超时问题,假如超时了如何解决,是重新发送消息呢?还是一直等待 假如某个 msg 进入了重试队列(%RETRY_XXX% ...

  10. mybatis用mysql数据库自增主键,插入一条记录返回新增记录的自增主键ID

    今天在敲代码的时候遇到一个问题,就是往数据库里插入一条记录后需要返回这个新增记录的ID(自增主键), 公司框架用的是mybatis的通用Mapper接口,里面的插入方法貌似是不能把新纪录的ID回填到对 ...