wxPython wxPython中的Replace()函数

wxPython wxPython中的Replace()函数

wx.MenuBar类中的另一个函数是Replace()函数。如果我们想从menubar中替换一个菜单,我们可以使用Replace()函数。它需要三个主要参数,即我们要替换的菜单的位置、我们要添加的菜单、新菜单的标题。

语法:

wx.MenuBar.Replace(self, pos, menu, title)

参数:

参数 输入类型 描述
pos int 新菜单在菜单栏中的位置。
menu wx.Menu 要添加的菜单。
title string 要添加的菜单。

让我们创建一个有两个菜单项Menu_one和Menu_two的窗口。

代码:

import wx
  
  
class Example(wx.Frame):
  
    def __init__(self, *args, **kw):
        super(Example, self).__init__(*args, **kw)
  
        # create MenuBar using MenuBar() function
        menubar = wx.MenuBar()
  
        # add menu to MenuBar
        fm1 = wx.Menu()
        fileitem = fm1.Append(20, "one")
  
        fm2 = wx.Menu()
        fileitem2 = fm2.Append(20, "two")
        menubar.Append(fm1, '&Menu_one')
        menubar.Append(fm2, '&Menu_two')
        self.SetMenuBar(menubar)
        self.SetSize((300, 200))
        self.SetTitle('Menu Bar')
          
def main():
    app = wx.App()
    ex = Example(None)
    ex.Show()
    app.MainLoop()
  
  
if __name__ == '__main__':
    main()

窗口:

wxPython wxPython中的Replace函数

现在让我们用new_Menu替换Menu_two。

替换的代码:

import wx
  
  
class Example(wx.Frame):
  
    def __init__(self, *args, **kw):
        super(Example, self).__init__(*args, **kw)
  
        # create MenuBar using MenuBar() function
        menubar = wx.MenuBar()
  
        # add menu to MenuBar
        fm1 = wx.Menu()
        fileitem = fm1.Append(20, "one")
  
        fm2 = wx.Menu()
        fileitem2 = fm2.Append(21, "two")
        fm3 = wx.Menu()
        fileitem3 = fm3.Append(22, "new")
  
        menubar.Append(fm1, '&Menu_one')
        menubar.Append(fm2, '&Menu_two')
        self.SetMenuBar(menubar)
        self.SetSize((300, 200))
        self.SetTitle('Menu Bar')
        menubar.Replace(1, fm3, "new_Menu")
  
def main():
    app = wx.App()
    ex = Example(None)
    ex.Show()
    app.MainLoop()
  
  
if __name__ == '__main__':
    main()

输出 :

wxPython wxPython中的Replace函数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

wxPython 教程