首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wxPython:名称错误

wxPython:名称错误
EN

Stack Overflow用户
提问于 2013-09-02 08:21:53
回答 1查看 676关注 0票数 0

我试图遵循“wxPython in action”一书中的清单1.3。

我想我已经写了一份代码的正本:

代码语言:javascript
复制
"""Hello, wxPython! program."""

import wx

class Frame(wx.Frame):
    """Frame class that displays an image."""

    def __init__(self,image, parent=None, id=-1, pos=wx.DefaultPosition, title='Hello, wxPython!'):

        """Create a Frame instance and display image."""
        temp = image.ConvertToBitmap()
        size = temp.GetWidth(), temp.GetHight()
        wx.Frame.__init__(self, parent, id, title, pos, size)
        self.bmp = wx.StaticBitmap(parent = self, bitmap = temp)

class App(wx.App):
    """Application class."""

    def OnInit(self):
        image = wx.Image('wxPython.jpg', wx.BITMAP_TYPE_JPEG)
        self.frame = Frame(image)
        self.frame.Show()
        self.SetTopWindow(self.frame)
        return True

    def main():
        app = App()
        app.MainLoop()

    if __name__ == '__main__':
        main()

...but在运行代码时会收到以下错误消息:

代码语言:javascript
复制
>>> 
Traceback (most recent call last):
  File "<string>", line 254, in run_nodebug
  File "\\ri-file-2\cst$\image.py", line 28, in <module>
    class App(wx.App):
  File "\\ri-file-2\cst$\image.py", line 43, in App
    main()
  File "\\ri-file-2\cst$\image.py", line 39, in main
    app = App()
NameError: global name 'App' is not defined
>>> 

有人能事先弄清楚出什么事了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-02 09:00:46

由于缩进错误,您的main子例程和if __name__ == '__main__'位现在属于App类。删除前面的四个空格:

代码语言:javascript
复制
        ...
        self.SetTopWindow(self.frame)
        return True

def main():
    app = App()
    app.MainLoop()

if __name__ == '__main__':
    main()

另外,确保程序文件夹中有wxPython.jpg文件,否则程序将无法运行。

PS。在这一行代码中:

代码语言:javascript
复制
    size = temp.GetWidth(), temp.GetHight()

它应该是GetHeight()而不是GetHight()

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18568583

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档