在之前的blog中有提到python的tkinter中的菜单操作

python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐

python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐(二)

python开发_tkinter_菜单选项中英文切换_菜单选项不可用操作_博主推荐

python开发_tkinter_复选菜单

python开发_tkinter_单选菜单_不可用菜单操作

python开发_tkinter_多级子菜单

下面是tkinter的获取单选菜单值的操作

运行效果:

当点击'print party and flavor'按钮的时候,获取单选菜单的值

==========================================================

代码部分:

==========================================================

  1. from tkinter import *
  2.  
  3. # The way to think about this is that each radio button menu
  4. # controls a different variable -- clicking on one of the
  5. # mutually exclusive choices in a radiobutton assigns some value
  6. # to an application variable you provide. When you define a
  7. # radiobutton menu choice, you have the option of specifying the
  8. # name of a varaible and value to assign to that variable when
  9. # that choice is selected. This clever mechanism relieves you,
  10. # the programmer, from having to write a dumb callback that
  11. # probably wouldn't have done anything more than an assignment
  12. # anyway. The Tkinter options for this follow their Tk
  13. # counterparts:
  14. # {"variable" : my_flavor_variable, "value" : "strawberry"}
  15. # where my_flavor_variable is an instance of one of the
  16. # subclasses of Variable, provided in Tkinter.py (there is
  17. # StringVar(), IntVar(), DoubleVar() and BooleanVar() to choose
  18. # from)
  19.  
  20. __author__ = {'name' : 'Hongten',
  21. 'mail' : 'hongtenzone@foxmail.com',
  22. 'blog' : 'http://www.cnblogs.com/',
  23. 'QQ': '',
  24. 'created' : '2013-09-11'}
  25.  
  26. def makePoliticalParties(var):
  27. # make menu button
  28. Radiobutton_button = Menubutton(mBar, text='Political Party',
  29. underline=0)
  30. Radiobutton_button.pack(side=LEFT, padx='2m')
  31.  
  32. # the primary pulldown
  33. Radiobutton_button.menu = Menu(Radiobutton_button)
  34.  
  35. Radiobutton_button.menu.add_radiobutton(label='Republican',
  36. variable=var, value=1)
  37.  
  38. Radiobutton_button.menu.add('radiobutton', {'label': 'Democrat',
  39. 'variable' : var,
  40. 'value' : 2})
  41.  
  42. Radiobutton_button.menu.add('radiobutton', {'label': 'Libertarian',
  43. 'variable' : var,
  44. 'value' : 3})
  45.  
  46. var.set(2)
  47.  
  48. # set up a pointer from the file menubutton back to the file menu
  49. Radiobutton_button['menu'] = Radiobutton_button.menu
  50.  
  51. return Radiobutton_button
  52.  
  53. def makeFlavors(var):
  54. # make menu button
  55. Radiobutton_button = Menubutton(mBar, text='Flavors',
  56. underline=0)
  57. Radiobutton_button.pack(side=LEFT, padx='2m')
  58.  
  59. # the primary pulldown
  60. Radiobutton_button.menu = Menu(Radiobutton_button)
  61.  
  62. Radiobutton_button.menu.add_radiobutton(label='Strawberry',
  63. variable=var, value='Strawberry')
  64.  
  65. Radiobutton_button.menu.add_radiobutton(label='Chocolate',
  66. variable=var, value='Chocolate')
  67.  
  68. Radiobutton_button.menu.add_radiobutton(label='Rocky Road',
  69. variable=var, value='Rocky Road')
  70.  
  71. # choose a default
  72. var.set("Chocolate")
  73.  
  74. # set up a pointer from the file menubutton back to the file menu
  75. Radiobutton_button['menu'] = Radiobutton_button.menu
  76.  
  77. return Radiobutton_button
  78.  
  79. def printStuff():
  80. print("party is", party.get())
  81. print("flavor is", flavor.get())
  82. print()
  83.  
  84. #################################################
  85. #### Main starts here ...
  86. root = Tk()
  87.  
  88. # make a menu bar
  89. mBar = Frame(root, relief=RAISED, borderwidth=2)
  90. mBar.pack(fill=X)
  91.  
  92. # make two application variables,
  93. # one to control each radio button set
  94. party = IntVar()
  95. flavor = StringVar()
  96.  
  97. Radiobutton_button = makePoliticalParties(party)
  98. Radiobutton_button2 = makeFlavors(flavor)
  99.  
  100. # finally, install the buttons in the menu bar.
  101. # This allows for scanning from one menubutton to the next.
  102. mBar.tk_menuBar(Radiobutton_button, Radiobutton_button2)
  103.  
  104. b = Button(root, text="print party and flavor", foreground="red",
  105. command=printStuff)
  106. b.pack(side=TOP)
  107.  
  108. root.title('menu demo')
  109. root.iconname('menu demo')
  110.  
  111. root.mainloop()

参考资料:

http://www.oschina.net/code/explore/Python-3.1.3/Demo/tkinter/matt/two-radio-groups.py

python开发_tkinter_获取单选菜单值的更多相关文章

  1. python开发_tkinter_获取文本框内容_给文本框添加键盘输入事件

    在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...

  2. python开发_tkinter_单选菜单_不可用菜单操作

    在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...

  3. python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐(二)

    在上一篇blog:python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 中介绍了python中的tkinter的一些东西,你可能对tkinter有一定的了解了.这篇b ...

  4. python开发_tkinter_小球完全弹性碰撞游戏

    python开发_tkinter_小球完全弹性碰撞游戏   完成这个小球的完全弹性碰撞游戏灵感来自于: 下面是我花了一周下班时间所编写的一个小球完全弹性碰撞游戏: 游戏初始化状态: 最下面的游标和修改 ...

  5. python开发_tkinter_多级子菜单

    在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...

  6. python开发_tkinter_复选菜单

    在之前的blog中有提到python的tkinter中的菜单操作 python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐 python开发_tkinter_窗口控件_自 ...

  7. python开发_tkinter_菜单选项中英文切换_菜单选项不可用操作_博主推荐

    我使用的python版本为:3.3.2 如果你对python中tkinter模块的菜单操作不是很了解,你可以看看: python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推 ...

  8. python开发_tkinter_窗口控件_自己制作的Python IDEL_博主推荐

    在了解python中的tkinter模块的时候,你需要了解一些tkinter的相关知识 下面是python的API文档中的一个简单例子: import tkinter as tk class Appl ...

  9. python开发_tkinter_小球完全弹性碰撞游戏_源码下载

    完成这个小球的完全弹性碰撞游戏灵感来自于: 下面是我花了一周下班时间所编写的一个小球完全弹性碰撞游戏: 游戏初始化状态: 最下面的游标和修改小球的移动速度 ====================== ...

随机推荐

  1. MyBatis 总结记录

    1.1MyBatis简介 MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架.MyBatis 摒除了大部分的JDBC代码.手工设置参数和结果集重获.MyBatis 只使用简单的XM ...

  2. Robotium测试套管理测试用例

    前提:已写好测试用例 新建个测试套MyTestSuite管理你需要跑的测试用例,或者将相同功能的测试用例归纳到一个测试套中 package com.robotium.test.testsuite; i ...

  3. 使用os模块实现展示目录下的文件和文件夹

    Windows 10家庭中文版,Python 3.6.4 今天学习了os模块,下面是使用它开发的一个展示目录下的文件和文件夹的函数,代码如下: import os # deep大于等于1的整数,默认为 ...

  4. 170406回顾-SQL Server的smalldatetime类型比较

    在比较SQL Server的类型为smalldatetime字段时出现下面的错误:将 expression 转换为数据类型 smalldatetime 时出现算术溢出错误 正确的比较方法如下:将lon ...

  5. Python元组与字典详解

    Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup ...

  6. 从源码层次分析asterisk如何产生呼叫

    老规矩,看别人是怎么搞的 http://blog.chinaunix.net/uid-14723273-id-1739552.html over...

  7. MySQL基础 - 视图

    创建视图: 假设要将posts表的前十条数据作为视图 mysql> CREATE VIEW view_test AS SELECT * FROM POSTS LIMIT 10; 使用: 可以把视 ...

  8. malloc和free的实现

     C++ Code  12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 ...

  9. 为什么有些网页QQ浏览器右键没有检查

    改成[极速内核]. 设置->高级设置 改成[极速内核]: 如下图:

  10. sql server中分布式查询随笔(链接服务器(sp_addlinkedserver)和远程登录映射(sp_addlinkedsrvlogin)使用小总结)

    由于业务逻辑的多样性,经常得在sql server中查询不同数据库中数据,这就产生了分布式查询的需求 现我将开发中遇到的几种查询总结如下: 1.access版本 --建立连接服务器 EXEC sp_a ...