您的位置:首页 > 编程语言 > Python开发

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

2013-09-10 18:40 573 查看
在之前的blog中有提到python的tkinter中的菜单操作

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

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

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

python开发_tkinter_复选菜单

下面是单选菜单和不可用菜单操作

运行效果:



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

代码部分:

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

from tkinter import *

__author__ = {'name' : 'Hongten',
'mail' : 'hongtenzone@foxmail.com',
'blog' : 'http://www.cnblogs.com/',
'QQ': '648719819',
'created' : '2013-09-10'}
#global var
checked_box = [False, False, False, False, False, False, False, False, False, False]
radio_items = ['Republican', 'Democrat', 'Libertarian', 'Commie',
'Facist', 'Labor Party', 'Torie', 'Independent',
'Anarchist', 'No Opinion']
opinion = False
#################################################
#### Main starts here ...
root = Tk()
root.geometry('250x400')
root.title('menu demo')
root.iconname('menu demo')

def print_info(index):
global checked_box
global radio_items
n = [x for x in range(0, len(checked_box))]
if index in n:
checked_box[index - 1] = not checked_box[index - 1]
print(radio_items[index - 1], '?', checked_box[index - 1])
else:
pass

def print_opinion():
global opinion
opinion = not opinion
print('opinion ? ', opinion)

def makeRadiobuttonMenu():
# make menu button
Radiobutton_button = Menubutton(mBar, text='Radiobutton Menus',
underline=0)
Radiobutton_button.pack(side=LEFT, padx='2m')

# the primary pulldown
Radiobutton_button.menu = Menu(Radiobutton_button)

# and all the Radio buttons. Note that the "variable" "onvalue" and "offvalue" options
# are not supported correctly at present. You have to do all your application
# work through the calback.
Radiobutton_button.menu.add_radiobutton(label='Republican', command=print_info(1))
Radiobutton_button.menu.add_radiobutton(label='Democrat', command=print_info(2))
Radiobutton_button.menu.add_radiobutton(label='Libertarian', command=print_info(3))
Radiobutton_button.menu.add_radiobutton(label='Commie', command=print_info(4))
Radiobutton_button.menu.add_radiobutton(label='Facist', command=print_info(5))
Radiobutton_button.menu.add_radiobutton(label='Labor Party', command=print_info(6))
Radiobutton_button.menu.add_radiobutton(label='Torie', command=print_info(7))
Radiobutton_button.menu.add_radiobutton(label='Independent', command=print_info(8))
Radiobutton_button.menu.add_radiobutton(label='Anarchist', command=print_info(9))
Radiobutton_button.menu.add_radiobutton(label='No Opinion', command=print_opinion())

# set up a pointer from the file menubutton back to the file menu
Radiobutton_button['menu'] = Radiobutton_button.menu

return Radiobutton_button

def makeDisabledMenu():
Dummy_button = Menubutton(mBar, text='Dead Menu', underline=0)
Dummy_button.pack(side=LEFT, padx='2m')

# this is the standard way of turning off a whole menu
Dummy_button["state"] = DISABLED
return Dummy_button

# make a menu bar
mBar = Frame(root, relief=RAISED, borderwidth=2)
mBar.pack(fill=X)

Radiobutton_button = makeRadiobuttonMenu()
NoMenu = makeDisabledMenu()

mBar.tk_menuBar(Radiobutton_button, NoMenu)

root.mainloop()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: