Tkinter之Menu组件用法

Tkinter之Menu组件用法

    开发工具类桌面应用使用Python、Java这类语言是一种不错的选择,他们的GUI库均可以很好的支持跨平台特性。本系列博客主要总结Tkinter库中提供的UI组件,关于Java的GUI开发,感兴趣的能够在以下系列博客中找到:python

https://my.oschina.net/u/2340880/blog?catalog=5647945&temp=1509528194945ide

    Tkinter中有提供Menu菜单组件中能够添加以下几种组件:函数

1_动做项:简单的行为按钮,用户点击后会执行相应的方法。工具

2_子菜单:行为完整的子菜单项。布局

3_控制按钮:可有选中与非选中状态,用来作开关。post

4_单选列表:一组单选按钮。开发工具

    为一个窗口添加菜单十分容易,示例代码以下:字体

root = Tk()
rootMenu = Menu(root)
root.config(menu=rootMenu)

item = Menu(master=rootMenu,postcommand=call,tearoff=1)
rootMenu.add_cascade(menu=item,label="File")
item.add_command(label='new File')
subItem = Menu(item)
subItem.add_command(label="Open in noew window")
item.add_cascade(menu=subItem,label="Open")

效果以下图所示:spa

Menu构造函数中第1个参数能够传入菜单所属的窗口或者父菜单,后面能够添加一些菜单配置,例如:.net

属性 意义
activebackground 活跃时的背景色
activeborderwidth 活跃时的边框宽度
activeforeground 活跃时的前景色
bg 或者 background 正常状态背景色
bd 或者 borderwidth 正常状态变宽宽度
cursor 鼠标样式
disabledforeground 无效状态的前景色
font 菜单字体
fg 或者 foreground 正常状态的前景色
postcommand 设置菜单被唤出时的回调
relief 设置菜单浮雕效果
selectcolor 设置菜单选中颜色
tearoff 能够设置为0和1,表示此菜单是否能够独立出来
tearoffcommand 菜单独立被触发时的回调
title 可设置独立菜单的标题

须要注意,在MacOS系统上,菜单的样式是由系统维护的,上面的大多属性都将没有效果。

    下面这些方法用来进行菜单配置:

#添加一个子菜单 coption为配置选项
add_cascade(coption...)
#添加一个切换按钮 coption为配置选项
add_checkbutton(coption...)
#添加一个功能按钮 coption为配置选项
add_command(coption...)
#添加一个单选按钮 coption为配置选项
add_radiobutton(coption...)
#添加一个分割线
add_separator()
#删除index1 到 index2之间的选项
delete(index1,index2)
#获取菜单某一项的属性值
entrycget(index,coption)
#从新配置菜单中某项的属性
entryconfigure(index,coption...)
#返回参数位置对应的选项索引
index(i)
#在指定位置插入一个子菜单
insert_cascade(index,coption...)
#在指定位置插入一个切换按钮
insert_checkbutton(index,coption...)
#在指定位置插入一个功能按钮
insert_command(index,coption...)
#在指定位置插入一个单选按钮
insert_radiobutton(index,coption...)
#在指定位置插入一个分割线
insert_separator(index)
#代码手动调用一次某个选项
invoke(index)
#在窗口指定位置弹出菜单
post(x,y)
#获取个选项的类型
type(index)
#获取某个选项距离菜单顶部的偏移量
yposition(n)
#添加一个选项 能够是功能按钮,切换按钮,单选按钮或子菜单,由类型确认
#类型可选 cascade checkbutton command radiobutton separator
add(kind,coption)

上面列举方法中的coption用来进行一些配置项的设置,可选配置项以下:

属性名 意义
accelerator 设置快捷键
activebackground 激活状态背景色
activeforeground 激活状态前景色
background 正常状态背景色
bitmap 设置bitmap图标
columnbreak 设置分列
command 设置激活时的回调函数
compound 设置展现文本和图标是的布局方式
font 设置字体
foreground 设置正常状态的前景色
hidemargin 设置是否隐藏外边距 设置True或False
image 设置图片 gif格式
label   设置显示的文本 
menu 这个选项只用在添加子菜单中
offvalue 设置checkbutton关闭时的值
onvalue 设置checkbutton开启时的值
selectcolor 设置选中状态的颜色
selectimage 设置选中状态的图像
state    设置选项状态,DISABLED或ACTIVE
underline  设置下划线
value 选项的值
variable 用于单选按钮或切换按钮
相关文章
相关标签/搜索