首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在使用.get方法调用IntVar()值时,使用循环在Tkinter中创建复选按钮会导致意外的行为

在使用.get方法调用IntVar()值时,使用循环在Tkinter中创建复选按钮会导致意外的行为。这是因为在循环中创建的复选按钮共享同一个IntVar对象,导致它们的值相互影响。

为了解决这个问题,可以为每个复选按钮创建一个独立的IntVar对象。这样每个复选按钮都有自己的值,互不干扰。

以下是一个示例代码,展示了如何使用循环创建独立的复选按钮:

代码语言:txt
复制
import tkinter as tk

root = tk.Tk()

# 创建一个列表来保存IntVar对象
int_vars = []

# 循环创建复选按钮
for i in range(5):
    # 创建一个独立的IntVar对象
    int_var = tk.IntVar()
    int_vars.append(int_var)

    # 创建复选按钮,并绑定到对应的IntVar对象
    check_button = tk.Checkbutton(root, text=f"Option {i+1}", variable=int_var)
    check_button.pack()

# 测试获取每个复选按钮的值
def get_values():
    values = [int_var.get() for int_var in int_vars]
    print(values)

button = tk.Button(root, text="Get Values", command=get_values)
button.pack()

root.mainloop()

在这个示例中,我们创建了一个名为int_vars的列表来保存每个复选按钮的IntVar对象。在循环中,我们为每个复选按钮创建一个独立的IntVar对象,并将其添加到int_vars列表中。然后,我们创建复选按钮,并将其绑定到对应的IntVar对象。这样,每个复选按钮都有自己独立的值。

当点击"Get Values"按钮时,我们可以通过遍历int_vars列表来获取每个复选按钮的值,并打印出来。

希望这个示例能帮助你解决在使用循环创建复选按钮时遇到的问题。如果你想了解更多关于Tkinter的信息,可以参考腾讯云的Tkinter产品介绍页面:Tkinter产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python 图形化界面基础篇:添加复选框( Checkbutton )到 Tkinter 窗口

步骤4:获取复选 要获取复选,可以使用 get() 方法访问复选关联变量。...以下是一个示例: checkbox_value = checkbox_var.get() 在这个示例,我们使用 get() 方法获取了复选,并将其存储变量 checkbox_value 。...完整示例代码 以下是一个完整示例代码,演示如何创建一个 Tkinter 窗口并在其中添加一个复选框,并在按钮点击获取复选: import tkinter as tk # 创建Tkinter窗口...我们定义了一个名为 button_click 按钮点击事件处理程序,它会在按钮被点击执行。在这个示例,我们使用 get() 方法获取复选,并根据值更新标签文本。...最后,我们创建了一个标签 label ,用于显示复选状态。 我们使用 pack() 方法复选框、按钮和标签添加到窗口中,并启动了 Tkinter 主事件循环

1.2K50

软件测试|超好用超简单Python GUI库——tkinter(十二)

前言上一篇文章我们介绍了tkinter单选框实现,单选框各选项之间关系是互斥,选择了A选项,就不能选B选项;复选框就不一样,各个选项之间是并列,我选了A还可以选B和C选项,我们大学选课以及我们啊购物选购商品就是类似的情况...tkinter提供了Checkbutton复选框控件来帮助我们实现复选控制功能,本篇文章我们来介绍复选框控件使用。...variable和复选按钮关联变量,该变量值随着用户选择行为来改变(选或不选),即在 onvalue 和 offvalue 设置之间切换,这些操作由系统自动完成2....indicatoron默认为 True,表示是否绘制用来选择选项小方块,当设置为 False ,会改变原有按钮样式,与单选按钮相同selectcolor选择框颜色(即小方块颜色),默认由系统指定...invoke()调用 Checkbutton command 选项指定函数或方法,并返回函数返回2.

87830
  • PythonGUI编程和tkinter,Wxpython

    Python Tkinter 通用控件属性: Python Tkinter 按钮组件 (Button) 按钮组件用于 Python 应用程序添加按钮按钮上可以放上文本或图像,按钮可用于监听用户行为...tkMessageBox ,还是有很多区别的,python3以后版本tkinter应该首字母小写,而tkMessageBox及库对应函数应该相应改为tkinter.messagebox 具体使用按钮组件进行函数调用时也有对应内容...返回变量variable=var通常应预先声明变量类型var=IntVar()或var=StringVar(),在所调用函数中方可用var.get()方法获取被选中实例value。...复选框(Checkbutton) # 定义方法 w = tkinter.Checkbutton( master, option=value, ... ) # python3复选定义方式发生了略微改变...返回变量variable=var 通常可以预先逐项分别声明变量类型var=IntVar() (默认)或 var=StringVar(), 在所调用函数中方可分别调用 var.get()方法 取得被选中实例

    24710

    tkinter系列 第五课 Checkbutton窗口部件 】

    前言 python通常我们写程序,显示结果和操作都是终端区,如果要想实现一个有显示界面的程序那该怎样实现呢?...python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带tkinter库来实现。...本节课将要学习Checkbutton窗口部件,Checkbutton又叫复选框,那什么时候该用复选框呢?通常是两个不同之间选中或者不选中,一组按钮就可以实现很多值一个选择。...通过设置变量,可以追踪查询按钮状态 var = IntVar() # 定义按钮变化一个反应 def print_state(): print(var.get()) # c = Checkbutton...2.多个复选框 代码: from tkinter import * import tkinter.messagebox #创建一个主窗口 root = Tk() # 创建 宽400高250窗口 x是小写英文字符

    1.6K30

    python tkinter复选、文本、下拉实现

    , command=clickMe) # 创建一个按钮, text:显示按 action.grid(column=2, row=1) # 设置其界面中出现位置 # 文本框 name = tk.StringVar...,0为numberChosen['values'] 下标值 # 复选框 chVarDis = tk.IntVar() # 用来获取复选框是否被勾选,通过chVarDis.get()来获取其状态, #...') # text为复选框 #后面的名称,variable将该复选状态赋值给一个变量,当state='disabled', #该复选框为灰色,不能点状态 check1.select() # 该复选框是否勾选...,select为勾选, deselect为不勾选 check1.grid(column=0, row=4, sticky=tk.W) # sticky=tk.W 当该列其他行或该行其他列 #某一个功能拉长这列宽度或高度...mainloop(),窗口才会显示出来 补充知识:【tkinter】填坑 解决Entry、Label不能修改text、image等属性问题 tkinter定义一个输入,如: input =Entry

    3.3K10

    Python-Tkinter图形化界面设计(详细教程 )

    其图像化编程基本步骤通常包括: ○ 导入 tkinter 模块 ○ 创建 GUI 根窗体 ○ 添加人机交互控件并编写相应函数。 ○ 主事件循环中等待用户触发事件响应。...实例化控件,实例属性可以“属性=属性形式枚举列出,不区分先后次序。...值得注意是:属性text通常用于实例第一次呈现时固定文本,而如果需要在程序执行后发生变化,则可以使用下列方法之一实现:1、用控件实例configure()方法来改变属性text,可使显示文本发生变化...返回变量variable=var通常应预先声明变量类型var=IntVar()或var=StringVar(),在所调用函数中方可用var.get()方法获取被选中实例value。...返回变量variable=var 通常可以预先逐项分别声明变量类型var=IntVar() (默认)或 var=StringVar(), 在所调用函数中方可分别调用 var.get()方法 取得被选中实例

    14.2K40

    Python Tkinter Gui 常用组件介绍 基本使用

    Python Tkinter Gui 窗口图标,标签,输入,单复选,文件导入,按钮,日志 等常用组件 基本使用 ---- 文章目录 Python Tkinter Gui 窗口图标,标签,输入,...单复选,文件导入,按钮,日志 等常用组件 基本使用 @[TOC](文章目录) 前言 tkinter是什么?...我们编写Python代码会调用内置TkinterTkinter封装了访问Tk接口; Tk是一个图形库,支持多个操作系统,使用Tcl语言开发; Tk会调用操作系统提供本地GUI接口,完成最终...,用户可以从中选择,菜单条,用来实现下拉和弹出式菜单 Menubutton 菜单按钮 用来包含菜单组件(有下拉式、层叠式等等) Scale 进度条 线性“滑块”组件,可设定起始和结束,显示当前位置精确...(tk.END, path_) # 文本输入组件,插入文件导入按钮字符串地址 def param_print(self): # 如果输入地址和文件选择按钮都为None

    2.8K20

    Tkinter教程(每天半小时,3天彻底掌握Tkinter)day3

    2021.3.1  Combobox控件 下拉菜单需要单独引包 from tkinter import ttk 使用方法 combox = ttk.Combobox(win) combox['value...Tkinter单选框Radiobutton # 整数类型变量 v = IntVar() def funcRadio(): out_text.insert(INSERT, v.get())...value与combox一样,根据选项进行功能使用即可,单选按钮这里显示按钮样式,功能是一样没有区别,就是有两个状态,一个是按下,一个是取消。 ...Tkinter复选框Checkbutton # 新建整型变量 CheckVar1 = IntVar() CheckVar2 = IntVar() CheckVar3 = IntVar() # 获取check...所有的布局都可以采用grid方式进行布局,可能会有些不太好看,但是功能上基本上我们能搞定所有内容了,这里我没有搞listbox因为使用text很多时候更方便。

    1.1K10

    零基础学Python【二十三、图形化界面设计 】(基础一篇全,欢迎认领)

    其图像化编程基本步骤通常包括: 导入 tkinter 模块 创建 GUI 根窗体 添加人机交互控件并编写相应函数。 主事件循环中等待用户触发事件响应。...当使用 Place 布局管理容器组件,需要设置组件 x、y 或 relx、rely 选项,Tkinter 容器内坐标系统原点 (0,0) 左上角,其中 X 轴向右延伸,Y 轴向下延伸,如图所示...返回变量variable=var通常应预先声明变量类型var=IntVar()或var=StringVar(),在所调用函数中方可用var.get()方法获取被选中实例value。...返回变量variable=var 通常可以预先逐项分别声明变量类型var=IntVar() (默认)或 var=StringVar(), 在所调用函数中方可分别调用 var.get()方法 取得被选中实例...用Toplevel 所创建子窗体是非模式(Modeless)窗体,虽然初建子窗体最前面,但根窗体上控件实例也是可以被操作

    14.2K30

    Tkinter复选菜单是否被选中判断与设置方式

    废话不多说,直接上代码,其中有注释,代码如下: # encoding: utf-8 """ 运行之后会出一个窗口,按钮点击会改变复选菜单被选中状态,复选菜单是否被选中看前面是否有√。...""" from Tkinter import * def change_check_button_state(evet): """改变复选菜单被选中状态""" if var.get() =...= IntVar() # 添加复选菜单 menu_check.add_checkbutton(label="check1", command=print_check_button_state, variable...win.bind("<Button-3 ", xShowMenu) # #设定鼠标右键触发事件,调用xShowMenu方法 win.mainloop() # #窗口持久化 # #2019...以上这篇Tkinter复选菜单是否被选中判断与设置方式就是小编分享给大家全部内容了,希望能给大家一个参考。

    1.1K10

    Python 学习之 Tkinter「上 」

    Tk 和 Tkinter 可以大多数 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 后续版本可以实现本地窗口风格,并良好地运行。...但是 Python 自带库是支持 Tk Tkinter使用 Tkinter ,无需安装任何包,就可以直接使用。...我们编写 Python 代码会调用内置 TkinterTkinter 封装了访问 Tk 接口;Tk 是一个图形库,支持多个操作系统,使用Tcl 语言开发;Tk 会调用操作系统提供本地 GUI...# 获取输入控件,输出在控制台 print(v.get()) print(entry.get()) 例:点击按钮输出输入框内容 def showInfo(): print(entry.get..."Position\n" # 清除 text 所有内容 t.delete(0.0, tkinter.END) # 复选框选中后,将其对应内容写到文本框

    2.2K40

    Python GUI编程学习笔记之tkinter控件介绍及基本使用方法详解

    ,所有控件都需要附着界面上,如果程序没有指定控件附着窗口,将默认附着到主窗口Tk,如果程序没有定义Tk,那么将自动创建一个 常见属性【想要初始化主窗口属性需要使用 主窗口对象.属性(“参数”...参数设置:可用参数参考上面Menu,用法同样可以参考按钮Button 添加菜单方法参考Menu 注意:这次不是root里面config了,而是菜单按钮设置 from tkinter import...参数设置:可用参数参考下面的,用法同样可以参考按钮Button variable:tkinter变量,可以使用 tkinter变量.get方法 来获取是否选中 如果想要获取选中值,必须设置一个tkinter...) v3 = IntVar() # 使用 Checkbutton,必须创建一个 Tkinter 变量用于存放按钮状态: cbtn=Checkbutton(root,text='男',variable...参数设置:可用参数参考下面的,用法同样可以参考按钮Button variable:tkinter变量,可以使用 tkinter变量.get方法 来获取是否选中 value:根据前面的variable

    9.6K10

    软件测试|超好用超简单Python GUI库——tkinter(十一)

    前言我们使用音乐播放软件,我们想选择播放模式,我们只能在随机播放,单曲循环,列表循环三种方式中选择一个,这就是我们常见单选情况,我们设计我们GUI,也有可能遇到单选情况,tkinter...如果设置为 False,则会改变单选按钮样式,当点击按钮变成 "sunken"(凹陷),再次点击变为 "raised"(凸起)selectcolor设置当 Radiobutton 为选中状态时候显示图片..."normal" 状态间切换)invoke()调用 Radiobutton command 参数指定函数,并返回函数返回2....('400x180')# IntVar() 用于处理整数类型变量v = tk.IntVar()# 根据单选按钮 value 来选择相应选项v.set(0)# 使用 variable 参数来关联...,我们选项存在多行冗余代码:import tkinter as tkwindow = tk.Tk()window.title("德甲联赛")window.geometry('400x180')site

    1.3K10

    Python 学习之 Tkinter「上 」

    Tk 和 Tkinter 可以大多数 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 后续版本可以实现本地窗口风格,并良好地运行。...我们编写 Python 代码会调用内置 TkinterTkinter 封装了访问 Tk 接口;Tk 是一个图形库,支持多个操作系统,使用Tcl 语言开发;Tk 会调用操作系统提供本地 GUI...# 获取输入控件,输出在控制台 print(v.get()) print(entry.get()) 效果图 ?...例:点击按钮输出输入框内容 def showInfo(): print(entry.get()) entry = tkinter.Entry(win) entry.pack() btn =...\n" # 清除 text 所有内容 t.delete(0.0, tkinter.END) # 复选框选中后,将其对应内容写到文本框 t.insert(tkinter.INSERT

    1.9K20

    Python打包GUI界面组件汇总,Tkinter(TK)实例代码

    Tkinter是python自带gui界面工具,作为非常强大内置库tkinter,利用它可以很轻松做出一些简易UI界面,Tkinter给我们提供了15种控件供大家使用。...Tkinter绑定了 Python Tk GUI 工具集 ,就是Python 包装Tcl代码,通过内嵌 Python 解释器内部 Tcl 解释器实现, Tkinter调用转换成 Tcl 命令...Tkinter优缺点: 历史最悠久, Python 事实上标准 GUI , Python 中使用 Tk GUI 工具集标准接口,已经包括标准 Python Windows 安 装,著名 IDLE...就是使用 Tkinter 实现 GUI 创建 GUI 简单,学起来和用起来也简单。...(MainForm,text="退出",fg='black') #窗体上创建 btn1 按钮 btn1.pack() #pack() 方法将 btn1 按钮放到窗体上 def fun_properry

    6.9K21

    Python 之 tkinter 学习笔记

    tkinter 类 元素 说明 Button 按钮 程序显示按钮 Canvas 画布 提供绘制功能 Checkbutton 多选框 程序显示多选框 Combobox 下拉框 显示下拉框 Entry...当你点击按钮,得不到任何响应,熟悉 GUI 编程都知道控件都需要一个响应函数,让我们点击按钮得到反馈。 具体实现起来也很简单,我们只需要额外定义一个函数,将控件与这个函数绑定即可。...当然,类似的也有 IntVar,DoubleVar,BooleanVar,我想你也同样能够理解它意思。 要得到其保存变量值, 使用 get() 方法即可。...要设置其保存变量值, 使用 set() 方法即可。...在下面的示例,我们创建了一个字典存储不同爱好,同样创建了 n 个多选框实例,并且将依次存入 dic_hobby。

    7K20

    Pythontkinter模块常用参数总结

    1、使用tkinter.Tk() 生成主窗口(root=tkinter.Tk())root.title('标题名')      修改框体名字,也可在创建使用className参数来命名;root.resizable...(Tkinter窗口部件类没有分级;所有的窗口部件类树中都是兄弟。)...,为了使多次移动变得可视,最好加上time.sleep()函数;只要用create_方法画了一个图形,就会自动返回一个ID,创建一个图形将它赋值给一个变量,需要ID就可以使用这个变量名。...coords(ID) 返回对象位置两个坐标(4个数字元组);对于按钮组件、菜单组件等可以创建组件通过command参数指定其事件处理函数。...())依次为字体,大小(大小可为字号大小),加粗tkinter.StringVar 能自动刷新字符串变量,可用set和get方法进行传和取值,类似的还有IntVar,DoubleVar...sys.stdout.flush

    83330

    tkinter系列 第六课 Radiobutton窗口部件 】

    前言 python通常我们写程序,显示结果和操作都是终端区,如果要想实现一个有显示界面的程序那该怎样实现呢?...python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带tkinter库来实现。...通常是多个选项中选取一个,按钮总是以组存在,一组按钮需要使用相同变量,一组按钮只能有一个被选中。 例-1:你最喜欢水果? 只能选一个,就可以使用单选按钮。 ? 例-2:选择性别? ?...解释: 三个单选框按钮设置variable都要设置为相同,value要不相同。 2.显示出对应按钮。...=v.get() s.set(value) # 设置红色背景标签 Label(root, textvariable=s,bg="red").pack() # 设置单选框数值变量 v = IntVar

    1.3K10
    领券