zoukankan      html  css  js  c++  java
  • python之menu

    只有主菜单没有二级菜单的例子:

    from tkinter import *
    root=Tk()
    root.wm_title('同济大学财务管理系统')
    menubar=Menu(root)#指定菜单实例的父窗口是root
    for item in ['文件','编辑','视图','关于']:
        menubar.add_command(label=item)
    root['menu']=menubar#指定主窗口的'menu'属性为刚刚创建的menubar
    root.mainloop()
    View Code

    主菜单携带子菜单的例子:

    from tkinter import *
    root=Tk()
    menubar=Menu(root)# it produces a menu instance
    fmenu=Menu(menubar)
    for item in ['新建','打开','保存','另存为']:
        fmenu.add_cascade(label=item)
    emenu=Menu(menubar)
    for item in ['复制','粘贴','剪切']:
        emenu.add_cascade(label=item)
    vmenu=Menu(menubar)
    for item in ['默认视图','新式视图']:
        vmenu.add_cascade(label=item)
    amenu=Menu(menubar)
    for item in ['版权信息','其他说明']:
        amenu.add_cascade(label=item)
    menubar.add_cascade(label='文件',menu=fmenu)
    menubar.add_cascade(label='编辑',menu=emenu)
    menubar.add_cascade(label='视图',menu=vmenu)
    menubar.add_cascade(label='关于',menu=amenu)
    root['menu']=menubar
    root.mainloop()
    View Code

    制作弹出式菜单的例子:

    from tkinter import *
    def xianshi():
        #global root
        x1=Label(root,text='I love China',background='blue')
        x1.pack()
    root=Tk()#制作一个盛所有窗口的容器
    menubar=Menu(root)#制作一个菜单实例
    for x in ['vb','c','java','php','c++']:
        menubar.add_command(label=x)
    menubar.add_command(label='python',command=xianshi)
    def pop(event):
        menubar.post(event.x_root,event.y_root)
    root.bind('<Button-3>',pop)
    root.mainloop()
    View Code

    带分割横线的二级菜单:

    from tkinter import *
    root=Tk()
    m=Menu(root)#创建一个菜单实例m,这个菜单实例依附在主窗口root上面。
    m2=Menu(m)#创建一个二级菜单实例,这个实例依附在菜单m上,因为Menu的参数是widget,它是一个窗
    #口,m也算是一个窗口了,只不过是菜单窗口。
    for item in ['python','perl','php','ruby']:
        m2.add_command(label=item)#菜单m2调用add_command方法,用来增加菜单项目标签
    m2.add_separator()#添加分割线,不需要任何参数
    for item in ['java','c++','c']:
        m2.add_command(label=item)#增加二级菜单项目标签
    m.add_cascade(label='语言',menu=m2)#给依附在root容器上的一级菜单m增加一个二级菜单
    root['menu']=m#给root增加菜单属性,让其拥有一级菜单
    root.mainloop()
    View Code

    增加复选按钮与单选按钮:

    from tkinter import *
    root=Tk()
    m=Menu(root)#创建一个菜单实例m,这个菜单实例依附在主窗口root上面。
    m2=Menu(m)#创建一个二级菜单实例,这个实例依附在菜单m上,因为Menu的参数是widget,它是一个窗
    #口,m也算是一个窗口了,只不过是菜单窗口。
    for item in ['python','perl','php','ruby']:
        m2.add_checkbutton(label=item)#菜单m2调用add_command方法,用来增加菜单项目标签,复选按钮
    m2.add_separator()#添加分割线,不需要任何参数
    for item in ['java','c++','c']:
        m2.add_radiobutton(label=item)#增加二级菜单项目标签,单选按钮
    m.add_cascade(label='语言',menu=m2)#给依附在root容器上的一级菜单m增加一个二级菜单
    root['menu']=m#给root增加菜单属性,让其拥有一级菜单
    root.mainloop()
    View Code
  • 相关阅读:
    第一章:linux命令初步
    请教shell读写XML问题(转)
    讓 BootCamp 下的 Windows XP 也能有 D 硬碟槽(转)
    Linux下的多线程编程(转)
    怎么查看redhat版本
    不透過 Boot Camp 安裝 Windows 7,並切割成多個磁碟槽(转)
    同位语从句用法详解
    更改linux的最大文件描述符限制
    ObjectiveC中 copy, tetain, assign , readonly , readwrite, nonatomic区别
    Linux如何查找文件安装路径
  • 原文地址:https://www.cnblogs.com/yibeimingyue/p/9362511.html
Copyright © 2011-2022 走看看