首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

[D]python参数有关问题,求

2012-05-10 
[D]python参数问题,求高手指点Python codeimport wxclass mainframe(wx.Frame):def __init__(self,parent,

[D]python参数问题,求高手指点

Python code
import wxclass mainframe(wx.Frame):    def __init__(self,parent,id):        wx.Frame.__init__(self, None,-1,"点到系统主界面",size=(800,730),            style=wx.MINIMIZE_BOX | wx.RESIZE_BORDER | wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.CLIP_CHILDREN)        panel=wx.Panel(self)        self.tb=TestTB(panel,id)        self.tb.Bind(wx.EVT_TOOLBOOK_PAGE_CHANGED, self.OnPageChanged)        menuBar=wx.MenuBar()        self.file=wx.Menu()        add=self.file.Append(-1,'添加用户')        chpwd=self.file.Append(-1,'修改密码')        inf=self.file.Append(-1,'个人信息')        self.file.AppendSeparator()        close=self.file.Append(-1,'退出')        menuBar.Append(self.file,'文件(&F)')        self.edit=wx.Menu()        undo=self.edit.Append(-1,'撤销')        redo=self.edit.Append(-1,'重做')        self.edit.AppendSeparator()        cut=self.edit.Append(-1,'剪切')        copy=self.edit.Append(-1,'复制')        paste=self.edit.Append(-1,'粘贴')        menuBar.Append(self.edit,'编辑(&E)')        self.view=wx.Menu()        people=self.view.Append(-1,'个人查看')        day=self.view.Append(-1,'按天查看')        month=self.view.Append(-1,'按月查看')        menuBar.Append(self.view,'查看(&V)')        self.help=wx.Menu()        about=self.help.Append(-1,'关于')        menuBar.Append(self.help,'帮助(&H)')        self.SetMenuBar(menuBar)        self.Bind(wx.EVT_MENU,self.OnAdd,add)        self.Bind(wx.EVT_MENU,self.OnChpwd,chpwd)        self.Bind(wx.EVT_MENU,self.OnInf,inf)        self.Bind(wx.EVT_MENU,self.OnClose,close)        self.Bind(wx.EVT_MENU,self.OnUndo,undo)        self.Bind(wx.EVT_MENU,self.OnRedo,redo)        self.Bind(wx.EVT_MENU,self.OnCut,cut)        self.Bind(wx.EVT_MENU,self.OnCopy,copy)        self.Bind(wx.EVT_MENU,self.OnPaste,paste)        self.Bind(wx.EVT_MENU,self.OnAbout,about)        self.Bind(wx.EVT_RIGHT_DOWN,self.OnRClick)    def OnAdd(self,event):        frame=adddialog(self)        frame.Show()    def OnChpwd(self,event):        frame=changedialog(self)        frame.Show()    def OnInf(self,event):        frame=infdialog(self)        frame.Show()    def OnClose(self,event):        self.frame.Destroy()    def OnAbout(self,event):        wx.MessageBox('A simple editor!','wxPython Notebook',wx.OK)    def OnRClick(self,event):        pos=(event.GetX(),event.GetY())        self.panel.PopupMenu(self.edit,pos)    def OnUndo(self,event):        self.text.Undo()    def OnRedo(self,event):        self.text.Redo()    def OnCut(self,event):        self.text.Cut()    def OnCopy(self,event):        self.text.Copy()    def OnPaste(self,event):        self.text.Paste()    def Resize(self,event):        newsize=self.frame.GetSize()        width=newsize.GetWidth()-10        height=newsize.GetHeight()-50        self.text.SetSize((width.height))        self.text.Refresh()    def OnPageChanged(self, event):        old = event.GetOldSelection()        new = event.GetSelection()        sel = self.tb.GetSelection()        event.Skip()#创建Toolbook类class TestTb(wx.Toolbook):    def __init__(self,parent,id):        wx.Toolbook.__init__(self, parent, id, size = (800,700),pos=(0,2),                                 style=wx.BK_DEFAULT)        panel = wx.Panel(self)                img1 = wx.Image('F:/图片/py/1.png',wx.BITMAP_TYPE_ANY).Scale(50,50)        img2 = wx.Image('F:/图片/py/2.png',wx.BITMAP_TYPE_ANY).Scale(50,50)        img3 = wx.Image('F:/图片/py/3.png',wx.BITMAP_TYPE_ANY).Scale(50,50)                il = wx.ImageList(50,50)        bmp1 =img1.ConvertToBitmap()        bmp2 =img2.ConvertToBitmap()        bmp3 =img3.ConvertToBitmap()        index1 = il.Add(bmp1)        index2 = il.Add(bmp2)        index3 = il.Add(bmp3)        self.AssignImageList(il)        page1 = PageOne(self)        self.AddPage(page1, "   个人查看    ".decode('utf-8'), imageId = index1)        page2 = PageTwo(self)        self.AddPage(page2, "    按天查看    ".decode('utf-8'), imageId = index2)        page3 = PageThree(self)        self.AddPage(page3, "    按月查看    ".decode('utf-8'), imageId = index3)        page1.SetFocus()        #page1class PageOne(wx.Panel):    def __init__(self, parent):        wx.Panel.__init__(self,parent)             panel = wx.Panel(self)        colour = [(255,255,255),(153,204,255),(151,253,225),]        self.SetBackgroundColour(colour[0])#page2class Pagetwo(wx.Panel):    def __init__(self, parent):        wx.Panel.__init__(self,parent)                 panel = wx.Panel(self)        colour = [(255,255,255),(153,204,255),(151,253,225),]        self.SetBackgroundColour(colour[1])#page3class Pagethree(wx.Panel):    def __init__(self, parent):        wx.Panel.__init__(self,parent)                 panel = wx.Panel(self)        colour = [(255,255,255),(153,204,255),(151,253,225),]        self.SetBackgroundColour(colour[2])if __name__ == '__main__':    app = wx.PySimpleApp()    frame=mainframe()    frame.Show()    app.MainLoop()Traceback (most recent call last):  File "C:\Python27\点到系统\页面切换.py", line 143, in <module>    frame=mainframe() 

TypeError: __init__() takes exactly 3 arguments (1 given)
我改过跟多次,老是说少参数,子类化的时候赋参数也不行,求高手指点
--------------------------
Double行动:
原帖分数:20
加分:20

[解决办法]
他那是示意表示你要放参数进去,你得先定义parent,id或者放数值面量嘛。其实这两个参数是鸡肋没用途,不要也罢...
frame=mainframe(None,-1)
[解决办法]
认真看报错信息自己除错嘛,你定义一个class TestTb,调用TestTB当然没有,大小写打错了嘛...

热点排行