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
  • 相关阅读:
    H
    G
    hdu1430魔板
    1104. Don’t Ask Woman about Her Age(数论)
    bellman_ford寻找平均权值最小的回路
    bellman_ford算法
    强联通块tarjan算法
    割点算法
    字符串的最小表示法
    扩展KMP
  • 原文地址:https://www.cnblogs.com/yibeimingyue/p/9362511.html
Copyright © 2011-2022 走看看