tkinter教程7:控件Menu

tkinter教程7:控件Menu


本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明.

 

环境:

python版本:3.5

开发环境:pyCharm

 

源码:

示例1:

import tkinter as tk
import threading


def main():
    threading.Thread(target=gui_thread).start()


def gui_thread():
    root = tk.Tk()
    app = App(root)
    root.mainloop()


class App:
    def __init__(self, root):
        frame = tk.Frame(root)
        frame.pack()

        # Menu
        self.menu_bar = tk.Menu(root)
        root.config(menu=self.menu_bar)

        # 子菜单
        self.menu_file = tk.Menu(self.menu_bar, tearoff=False)
        self.menu_bar.add_cascade(label='文件', menu=self.menu_file)
        # 子菜单中的选项
        self.menu_file.add_command(label='打开', command=lambda: print('打开'))
        self.menu_file.add_command(label='保存', command=lambda: print('保存'))
        # 分隔符
        self.menu_file.add_separator()
        self.menu_file.add_command(label='退出', command=root.quit)

        self.menu_bar.add_command(label='编辑', command=lambda: print('编辑'))


if __name__ == '__main__':
    main()

运行结果:

 

示例2:菜单中增加checkbutton和radiobutton

import tkinter as tk
import threading


def main():
    threading.Thread(target=gui_thread).start()


def gui_thread():
    root = tk.Tk()
    app = App(root)
    root.mainloop()


class App:
    def __init__(self, root):
        frame = tk.Frame(root)
        frame.pack()

        # Menu
        self.menu_bar = tk.Menu(root)
        root.config(menu=self.menu_bar)

        # checkbutton
        self.menu_file = tk.Menu(self.menu_bar, tearoff=False)
        self.menu_bar.add_cascade(label='文件', menu=self.menu_file)

        self.open_var = tk.IntVar()
        self.save_var = tk.IntVar()
        self.exit_var = tk.IntVar()
        self.menu_file.add_checkbutton(label='打开', command=lambda: print('打开'), variable=self.open_var)
        self.menu_file.add_checkbutton(label='保存', command=lambda: print('保存'), variable=self.save_var)
        self.menu_file.add_separator()
        self.menu_file.add_checkbutton(label='退出', command=root.quit, variable=self.exit_var)

        # radiobutton
        self.menu_edit = tk.Menu(self.menu_bar, tearoff=False)
        self.menu_bar.add_cascade(label='编辑', menu=self.menu_edit)

        self.edit_var = tk.IntVar()
        self.edit_var.set(1)
        self.menu_edit.add_radiobutton(label='剪切', command=lambda: print('剪切'), variable=self.edit_var, value=1)
        self.menu_edit.add_radiobutton(label='拷贝', command=lambda: print('拷贝'), variable=self.edit_var, value=2)
        self.menu_edit.add_radiobutton(label='粘贴', command=lambda: print('粘贴'), variable=self.edit_var, value=3)


if __name__ == '__main__':
    main()

运行结果:

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值