美文网首页
tkinter(菜单)

tkinter(菜单)

作者: W无花果W | 来源:发表于2021-05-02 10:27 被阅读0次

1. 窗口运行平台:

虽然在过去,平台和窗口系统之间有很好的相关性,但在今天就不那么真实了。例如,如果您的平台被标识为Unix,那么可能意味着X11下的Linux、Aqua下的macOS,甚至X11下的macOS。建议您使用以下方法来确定您正在哪个平台上运行:root.tk.call('tk', 'windowingsystem') # returns x11, win32 or aqua

菜单是经典Tk小部件的一部分;主题Tk小部件集中目前没有菜单。

在开始创建菜单之前,必须在应用程序中的某个位置放置该语句:root.option_add('*tearOff', FALSE)。如果没有它,您的每个菜单(在Windows和X11上)都将以一条虚线开始,并允许您“撕下”菜单,因此它将出现在自己的窗口中。你应该从你的应用程序中删除可拆卸的菜单,因为它们不是任何现代用户界面风格的一部分。

2. 创建菜单栏:

2.1 菜单栏

要为窗口创建菜单栏,首先,创建一个菜单小部件。然后,使用窗口的菜单配置选项将菜单小部件附加到窗口。

menubar=Menu(root)

root['menu'] = menubar

2.2 菜单

我们现在有一个菜单栏,但是如果没有一些菜单的话,那就没用了。同样,我们将为每个菜单创建一个菜单小部件,每个小部件都是菜单栏的子菜单。然后我们将它们全部添加到菜单栏。

menu_file = Menu(menubar)

menu_edit = Menu(menubar)

menubar.add_cascade(menu=menu_file, label='File')

menubar.add_cascade(menu=menu_edit, label='Edit')

2.3 菜单项

2.3.1 命令菜单项

menu_file.add_command(label='Open...', command=openFile)

menu_file.add_command(label='Close', command=closeFile)

2.3.2 子菜单

menu_recent = Menu(menu_file)

menu_file.add_cascade(menu=menu_recent, label='Open Recent')

2.3.3 分隔符

menu_file.add_separator()

2.3.4 Checkbutton and Radiobutton菜单项

check = StringVar()

menu_file.add_checkbutton(label='Check', variable=check, onvalue=1, offvalue=0)

radio = StringVar()

menu_file.add_radiobutton(label='One', variable=radio, value=1)

menu_file.add_radiobutton(label='Two', variable=radio, value=2)

与命令项类似,checkbutton和radiobutton菜单项支持在选择菜单项时调用的命令配置选项。在调用回调之前,关联变量和菜单项的状态都会更新。

2.3.5 操纵菜单项

相关文章

网友评论

      本文标题:tkinter(菜单)

      本文链接:https://www.haomeiwen.com/subject/sepprltx.html