tkinter如何获取复选框(Checkbutton)的值
tkinter获取复选框(Checkbutton)的值
定义GUI:
from tkinter import * # 初始化Tk() myWindow = Tk() # 设置标题 myWindow.title('Python GUI Learning') myWindow.geometry("%dx%d+%d+%d"%(400, 200, 200, 200)) # 创建Checkbutton checkVar = StringVar(value="0") check = Checkbutton(myWindow, text="Checkbutton test", variable=checkVar) check.grid(row=0, column=0, sticky=W, padx=2 ,pady=5) # 定义按钮点击事件 def button_Click(event=None): print(checkVar.get()) # 创建两个按钮 b1 =Button(myWindow, text='click me' , relief='raised', width=8, height=1, command=button_Click) b1.grid(row=0, column=2, sticky=W, padx=2 ,pady=10) # 进入消息循环 myWindow.mainloop()
效果:
对复选框进行操作后,点击按钮输出信息:
tkinter包的使用-Checkbutton
下面的例子讲一下如何使用Checkbutton,它和Radiobutton的区别是,Radiobutton只可以选中一个,是单选按钮,Checkbutton可以同时选中多个,是多选按钮。
只选中Python:
只选中C++:
两个都选中:
都不选:
代码:
import tkinter as tk window=tk.Tk() window.title('my window') window.geometry('200x100') l=tk.Label(window, bg='yellow', width=20, text='empty') l.pack() def print_selection(): if(var1.get()==1)&(var2.get()==0): l.config(text='I love only Python ') elif (var1.get()==0)& (var2.get()==1): l.config(text='I love only C++') elif (var1.get()==0)&(var2.get()==0): l.config(text='I do not love either') else: l.config(text='I love both') var1=tk.IntVar() var2=tk.IntVar() c1=tk.Checkbutton(window, text='Python', variable=var1, onvalue=1, offvalue=0, command=print_selection ) c1.pack() c2=tk.Checkbutton(window, text='C++', variable=var2, onvalue=1, offvalue=0, command=print_selection ) c2.pack() window.mainloop()
在Checkbutton()中参数onvalue
和前面讲的部件radiobutton
中的value相似, 当我们选中了这个checkbutton,onvalue
的值1就会放入到var1
中, 然后var1将其赋值给参数variable
,offvalue
用法相似,但是offvalue
是在没有选中这个checkbutton时,offvalue
的值1放入var1,然后赋值给参数variable
这是创建一个checkbutton部件,以此类推,可以创建多个checkbutton
在print_selection()中config
在之前的例子中就是将参数text
的值显示,这里的var1.get() == 1
就是前面所说的var1获得的变量onvalue=1
,var1.get() == 0
即是var1
获得的变量offvalu=0
同理var2
也是如此。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
pytorch更新tensor中指定index位置的值scatter_add_问题
这篇文章主要介绍了pytorch更新tensor中指定index位置的值scatter_add_问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06python处理 yaml 时保持输入输出格式一致的问题记录
这篇文章主要介绍了python处理 yaml 时保持输入输出格式一致的问题记录,要想保持顺序不变在dump时添加sort_keys=False,使yaml格式保持原来的排序,本文给大家介绍的非常详细,需要的朋友可以参考下2024-06-06python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+J
这篇文章主要介绍了python开发实例之python使用Websocket库开发简单聊天工具实例详解(python+Websocket+JS),需要的朋友可以参考下2020-03-03python使用pandas处理excel文件转为csv文件的方法示例
这篇文章主要介绍了python使用pandas处理excel文件转为csv文件的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-07-07
最新评论