WxPython和ShowMeDo教程

时间:2014-01-07 00:34:57

标签: python wxpython

我正在学习本教程系列中的第三个视频,以学习WxPython。我在视频中键入了代码,但仍然返回错误。我猜这与使用的WxPython或Python版本有关。他正在使用Python 2.4,我使用的是2.7.5,我不知道他使用的是什么WxPython版本,但我使用的是3.0.0。

这是代码:

import wx

class MainWindow(wx.Frame):
    def __init__(self,parent,id,title):
        wx.Frame.__init__(self,parent,wx.ID_ANY,title,size = (400,200), style = wx.DEFAULT_FRAME_STYLE | wx.NO_FULL_REPAINT_ON_RESIZE
        self.control = wx.TextCtrl(self,1,style = wx.TE_MULTILINE)
        self.Show(True)

app = wx.PySimpleApp()
frame = MainWindow(None,-1,"Small Editor")
app.MainLoop()

self.control返回的语法无效,但我不知道原因。

感谢任何帮助,

蓬松

1 个答案:

答案 0 :(得分:1)

看起来你错过了正上方直线上的最后一个括号。

一般来说,语法错误通常是由于拼写错误,缺少字符或其他类似错误造成的,并且可以在堆栈跟踪指示的行或直接在上面的行中找到。

添加括号后,以下代码将为我运行:

import wx

class MainWindow(wx.Frame):
    def __init__(self,parent,id,title):
        wx.Frame.__init__(self,parent,wx.ID_ANY,title,size = (400,200), style = wx.DEFAULT_FRAME_STYLE | wx.NO_FULL_REPAINT_ON_RESIZE)
        self.control = wx.TextCtrl(self,1,style = wx.TE_MULTILINE)
        self.Show(True)

app = wx.PySimpleApp()
frame = MainWindow(None,-1,"Small Editor")
app.MainLoop()