Форум сайта python.su
Не работает пример из учебника "WxPython in Action".
В самом начале кода написано:
import wx
import images
При запуске получаю:
Traceback (most recent call last):
File "I:\Documents and Settings\Aleksey\My Documents\aleksej\python\wxPython\learn\5.pyw", line 4, in <module>
import images
ImportError: No module named images
Офлайн
A5Когда то я тоже столкнулся с такой проблемкой.
Не работает пример из учебника "WxPython in Action".
В самом начале кода написано:При запуске получаю:import wx
import imagesВ чём дело?Traceback (most recent call last):
File "I:\Documents and Settings\Aleksey\My Documents\aleksej\python\wxPython\learn\5.pyw", line 4, in <module>
import images
ImportError: No module named images
Офлайн
Поместил images.py в одну директорию с моим скриптом, и теперь ошибка исправлена. Спасибо!
Офлайн
Теперь ошибки с модулем images вроде бы не возникает. Но вот файл не запускается. При отладке, если не ошибаюсь, ругается на getNewBitmap().
“”“Let's create menu.”“”
import wx
import images
class ToolbarFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, “Adding toolbars”, size=(300, 200))
# Panel
panel = wx.Panel(self)
panel.SetBackgroundColour(“White”)
# Creating the status bar
statusBar = self.CreateStatusBar()
# Creating the toolbar
toolbar = self.CreateToolBar()
# Adding a tool to the bar
toolbar.AddSimpleTool(wx.NewId(), images.getNewBitmap(), “New”, “Long help for ‘New’”)
# Preparing the toolbar for display
toolbar.Realize()
# Creating a menubar
menuBar = wx.MenuBar()
# Creating two individual menus
menu1 = wx.Menu()
menuBar.Append(menu1, “&File”)
#menu2 = wx.Menu()
# Creating individual menu items
# Attaching the menu to the menubar
# Attaching the menubar to the frame
self.SetMenuBar(menuBar)
if __name__ == “__main__”:
app = wx.PySimpleApp()
frame = ToolbarFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()
Ошибка:
Traceback (most recent call last):
File "I:\Documents and Settings\Aleksey\My Documents\aleksej\python\wxPython\learn\5.pyw", line 36, in <module>
frame = ToolbarFrame(parent=None, id=-1)
File "I:\Documents and Settings\Aleksey\My Documents\aleksej\python\wxPython\learn\5.pyw", line 18, in __init__
toolbar.AddSimpleTool(wx.NewId(), images.getNewBitmap(), "New", "Long help for 'New'")
AttributeError: 'module' object has no attribute 'getNewBitmap'
Отредактировано (Сен. 9, 2007 15:07:20)
Офлайн
На самом деле, там в туториале то ли опечатка, то ли так было в старой версии wx …
import wx from wx.py import images #не надо никуда таскать этот файлик :) ... toolbar.AddSimpleTool(wx.NewId(), images.getPyBitmap(), "New", "Long help for 'New'") #вместо getNewBitmap() ...
Офлайн
Спасибо! Теперь всё работает.
astoon:)
#не надо никуда таскать этот файлик :)
Офлайн
Пример после исправлений запускается, только вот проблема: долгожданной кнопки на панели инструментов нету
Офлайн
Я бы посоветовал вместо туториала использовать демонстрашку :)
функции AddSimpleTool в примерах я не нашел, сам использовал DoAddTool
Отредактировано (Март 2, 2009 02:19:31)
Офлайн