使用wx.wizard配置菜单

时间:2015-03-31 01:18:34

标签: wxpython

是否可以使用wx.wizard配置菜单栏?该类似乎没有SetMenuBar方法。以下错误导致错误:AttributeError: 'MyWizard' object has no attribute 'SetMenuBar'

import wx
import wx.wizard


class MyWizard(wx.wizard.Wizard):
    def __init__(self):
        wx.wizard.Wizard.__init__(self, None, id=wx.ID_ANY, title="Test", pos=wx.DefaultPosition, style=wx.DEFAULT_DIALOG_STYLE)
        self.m_pages = []
        self.m_wizPage = wx.wizard.WizardPageSimple(self)
        self.add_page(self.m_wizPage)

        # Menu
        menub = wx.MenuBar()
        # File Menu
        filem = wx.Menu()
        filem.Append(wx.ID_OPEN, "Open\tCtrl+O")
        menub.Append(filem, "&File")
        self.SetMenuBar(menub)


    def add_page(self, page):
        if self.m_pages:
            previous_page = self.m_pages[-1]
            page.SetPrev(previous_page)
            previous_page.SetNext(page)
        self.m_pages.append(page)


if __name__ == '__main__':
    app = wx.App(False)
    wiz = MyWizard()
    wiz.RunWizard(wiz.m_pages[0])
    wiz.Destroy()

1 个答案:

答案 0 :(得分:1)

没有。 Wizard类派生自wx.Dialog,对话框没有菜单。如果你真的想要一个,那么你可以尝试使用wx.lib.agw.flatmenu中的通用实现。