lyfnnnnnn
lyfnnnnnn
采纳率0%
2017-07-25 14:46 浏览 1.3k

为什么wxPython中的wx.Menu.Append()可以通过多种参数调用?

wxPython on Action中的例子,程序确实能跑通,但是这里不理解:

def createMenu(self, menuData):
    menu = wx.Menu()
    for eachItem in menuData:
        if len(eachItem) == 2:
            label = eachItem[0]
            subMenu = self.createMenu(eachItem[1])
           ** menu.Append(wx.NewId(), label, subMenu)**
        else:
            self.createMenuItem(menu, *eachItem)
    return menu

def createMenuItem(self, menu, label, status, handler, kind=wx.ITEM_NORMAL):
    if not label:
        menu.AppendSeparator()
        return

    **menuItem = menu.Append(-1, label, status, kind)**
    self.Bind(wx.EVT_MENU, handler, menuItem)

help(wx.Menu.Append)
Help on built-in function Append:

Append(...)
Append(id, item=EmptyString, helpString=EmptyString, kind=ITEM_NORMAL) -> MenuItem
Append(id, item, subMenu, helpString=EmptyString) -> MenuItem
Append(menuItem) -> MenuItem

Adds a menu item.

help中确实能查到Append的多种入参,但python不是不支持函数重载吗?这是为什么?入门小白求教各路大神。。。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答 默认 最新

相关推荐