解决Python图形库Tkinter提供的IntVar()、StringVar()绑定组件variable无效问题

先吐槽一下,csdn里面一堆机器人写的文章,连评论都是一样的=。=

先说问题出现的原因,如果使用Tkinter库创建超过1个窗口,就会出现IntVar()、StringVar()绑定组件无效的情况,无论怎么get都是同一个值

问题复现,示例代码:

import tkinter as tk
import time

def p():
    print("windows1:"+str(radio.get()))

def p1():
    print("windows2:"+str(radio1.get()))

root = tk.Tk()
radio = tk.IntVar()
root.minsize(200, 100)
root.maxsize(200, 100)

R1 = tk.Radiobutton(root, text="1", variable=radio, value=1 ,command=p)  
R1.place(x=10,y=10)

R2 = tk.Radiobutton(root, text="2", variable=radio, value=2 ,command=p)  
R2.place(x=80,y=10)

root1 = tk.Tk()
radio1 = tk.IntVar()
root1.minsize(200, 100)
root1.maxsize(200, 100)

R11 = tk.Radiobutton(root1, text="1", variable=radio1, value=1 ,command=p1)  
R11.place(x=10,y=10)

R
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值