python - 将鼠标悬停在 Tkinter 单选按钮上时被选中
问题描述
我的单选按钮有一个奇怪的问题。当我运行我的程序时,它们最初未被选中(如预期的那样)。但是,如果我将鼠标悬停在其中一个上,它们会选择自己,这可以允许同时选择两者。这似乎只在每次程序执行时发生一次,手动选择其中任何一个都可以解决问题,但我不知道为什么会发生这种情况。
让这个问题变得奇怪的是,当我第一次在它工作的函数之外编写这段代码时,看起来函数中的代码可能与它有关。
任何帮助表示赞赏。
def createPriceFrame(self):
priceFrame = tk.Frame(self.parent, bg = 'lightgreen')
priceFrame.place(relx = 0.5, rely = 0.45, relwidth = 0.35, relheight = 0.15, anchor='c')
option = tk.IntVar()
radioUnder = tk.Radiobutton(priceFrame, text = "Under", value = 1, var = option, bg = 'lightgreen', font = ('Arial', 12, 'bold'))
radioUnder.grid(row = 1, column = 0)
radioOver = tk.Radiobutton(priceFrame, text =" Over", value = 2, var = option, bg = 'lightgreen', font = ('Arial', 12, 'bold'))
radioOver.grid(row = 1, column = 1)
解决方案
您需要将变量(选项)声明为全局变量——是的,这很奇怪。不幸的是,我找不到原因。
推荐阅读
- terraform - Terraform 条件 - 如果变量不存在
- laravel - 如何在 Laravel 登录期间检查附加字段?
- symfony - 我的 Symfony 3.3 网站显示空白
- c# - 在其他类中计算后在静态 Main 中获得答案
- python - Python Socket编程改变服务器套接字
- python - Jupyter Notebooks 卡在 In[*]:
- python - Python - Pandas - 将格式为 2018-01-01 的日期列转换为时间戳的字符串版本
- mysql - 合并具有相同 prod_id 的 SQL 列和数据
- c# - 使用 SignalR 实现服务器端事件
- c# - 如何使用正则表达式检查一行是否包含精确的 3 个逗号