我正在学习本教程系列中的第三个视频,以学习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
返回的语法无效,但我不知道原因。
感谢任何帮助,
蓬松
答案 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()