存储变量对象的位置(StringVar,v,在您的情况下)必须保持不变,以便这种奇怪的行为不会出现.我的猜测是我们看到这种行为因为v超出了范围,出了问题.除了使用全局之外,我无法想到从函数中执行此操作的方法.

破码:

from Tkinter import *

def App(master):

v = StringVar()

v.set('python')

lable1 = Label(master, text=' hovering over below radio buttons will cause them to look like they are selected')

lable1.pack()

runtimeFrame = Frame(master, relief=GROOVE, borderwidth=3)

runtimeFrame.pack(fill=X, pady=5, padx=5)

for mode in ['java', 'python', 'jython']:

b = Radiobutton(runtimeFrame, text=mode, variable=v, value=mode, indicatoron=1)

b.pack(side=LEFT)

if __name__ == '__main__':

master = Tk()

App(master)

mainloop()

示例修复:

from Tkinter import *

def App(master, radio_var):

radio_var.set('python')

lable1 = Label(master, text=' hovering over below radio buttons will cause them to look like they are selected')

lable1.pack()

runtimeFrame = Frame(master, relief=GROOVE, borderwidth=3)

runtimeFrame.pack(fill=X, pady=5, padx=5)

for mode in ['java', 'python', 'jython']:

b = Radiobutton(runtimeFrame, text=mode, variable=radio_var, value=mode, indicatoron=1)

b.pack(side=LEFT)

if __name__ == '__main__':

master = Tk()

radio_var = StringVar()

App(master, radio_var)

mainloop()

考虑一下,如果你有多个需要持久化的变量,你可以传入一个变量列表或字典.

此外,如果“必须在函数中”是作业分配要求,请考虑将代码包装在类中.我不是tk专家,但这似乎是组织代码的首选方式.

示例修复2:

from Tkinter import *

class App(object):

def __init__(self, master):

self.radio_var = StringVar()

self.radio_var.set('python')

lable1 = Label(master, text=' hovering over below radio buttons will cause them to look like they are selected')

lable1.pack()

runtimeFrame = Frame(master, relief=GROOVE, borderwidth=3)

runtimeFrame.pack(fill=X, pady=5, padx=5)

for mode in ['java', 'python', 'jython']:

b = Radiobutton(runtimeFrame, text=mode, variable=self.radio_var, value=mode, indicatoron=1)

b.pack(side=LEFT)

if __name__ == '__main__':

master = Tk()

app = App(master)

mainloop()

注意一个微小的变化

app = App(master)

这是必需的,以便App实例不会过早地进行垃圾回收.这将有效地将self.radio_var拉出范围,我们又回到了第一个方向.

python单选按钮重置_python – Tkinter单选按钮初始化错误相关推荐

  1. python俄罗斯方块教程_python tkinter实现俄罗斯方块 基础版

    本项目最终效果见本人b站投稿av81480858 简介部分 本项目最终代码已上传github: https://github.com/BigShuang/Tetris 的1_BASIC文件夹 .其中1 ...

  2. python 单机程序_Python tkinter制作单机五子棋游戏

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于Python家庭,作者Python家庭 实战项目:使用Python ...

  3. python窗口居中_Python: tkinter窗口屏幕居中,设置窗口最大,最小尺寸实例

    我就废话不多说了.大家直接看代码吧! #!/usr/bin/env python #coding=utf-8 ''' 窗口屏幕居中,设置窗口最大,最小尺寸... 版权所有 2014 yao_yu (h ...

  4. python自定义异常捕获_python怎么自定义捕获错误

    异常捕捉: try: XXXXX1 raise Exception("xxxxx2") except (Exception1,Exception2,--): xxxx3 else: ...

  5. python编程画布_Python Tkinter 画布(Canvas)

    Python Tkinter 画布(Canvas) Python Tkinter 画布(Canvas)组件和 html5 中的画布一样,都是用来绘图的.您可以将图形,文本,小部件或框架放置在画布上. ...

  6. python place布局_Python TKinter布局管理Place()Grid Pack详解

    Tkinter是Python标准GUI工具包,有三种布局管理方式: pack grid place 这三种布局管理在同一个 master window 里是不可以混用的. 下面通过三示例,详解使用参数 ...

  7. python制作日历_python tkinter制作日历界面的简单步骤

    我们可能在编程考试里遇到过这样的编程题,对于基础不太好的小伙伴,可能很头疼这个流程,之前也跟大家说过掌握最精华的内容,才是最重要的,因此,下面小编不仅通过大家容易考试碰到的日历问题,更给大家教学,常见 ...

  8. python destroy函数_Python Tkinter,销毁顶层函数

    我正在使用Tkinter作为GUI使用python编程一些驱动器.当我的机器运行时,我想向用户显示一个顶层窗口,其中包含一些信息,这些信息应在功能完成后自行关闭.这是我的最小示例: from Tkin ...

  9. python 赋值重置_Python所有赋值语句快速预览

    课程亮点: 一图胜千言,让文科生都能看得懂的python教程!!!另外加详细的笔记作为辅助工具,500多条笔记帮助学员学习Python500多个知识点 课程内容: 1. Python3语言总体介绍以及 ...

最新文章

  1. es6箭头函数(=)与展开特性运算符(...)的使用
  2. iOS开发之AFNetworking 3.0.4使用
  3. K8s 文档增加反种族歧视声明 | 云原生生态周报 Vol. 54
  4. 程序员求职面试三部曲之三:快速适应新的工作环境
  5. java程序启动后就进行了7次younggc_程序员如何优化 Java GC
  6. 算法笔记之——快速幂
  7. 逼疯上海人的垃圾分类满月了:羊肉串变羊肉吕,奶茶里珍珠按颗算...
  8. IE与FireFox的不同点(不断更新中..)
  9. 5加载stm32 keil_STM32在SRAM、FLASH中调试代码的配置方法(附详细步骤)
  10. 武器系统仿真技术(二):末端制导系统蒙特卡洛仿真法
  11. SQL查询1-12月的数据
  12. 冗余链路中STP协议的工作过程以及二期STP收敛速度优化方案介绍
  13. Android集成腾讯TBS_X5内核的一些解决方法
  14. java 读取psd,寻找Java库以使用PSD格式
  15. 杜凯杰教学数据分析:python 图片爬取 爬取各校校花图片
  16. 虚幻Delay用法测试
  17. 美团配送系统技术演进
  18. [总结]视音频编解码技术零基础学习方法
  19. 247 中心对称数 II
  20. 实施化化工厂人员定位系统势在必行,你不知道的化化工厂人员定位

热门文章

  1. spark之2:原理介绍
  2. mysql使用过程中的几个细节注意点
  3. Embedding在网易严选搜索推荐中的应用
  4. js正则表达式之人民币匹配
  5. Discuz x2.5目录结构注释
  6. docker拷贝文件
  7. 解决WORDPRESS评论时头像不显示的问题
  8. UITabBarController详解
  9. 我是一个*** (三)
  10. JS 给某个DIV增加CLASS样式名