为什么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个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐