wxPython: проблемы с путями при экспорте растрового изображения - PullRequest
2 голосов
/ 17 мая 2009

У меня есть модуль, который запускает приложение wxPython, которое загружает wx.Bitmap из файла для использования в качестве кнопки панели инструментов. Это выглядит так: wx.Bitmap("images\\new.png", wx.BITMAP_TYPE_ANY). Все работает хорошо, когда я сам запускаю этот модуль, но когда я пытаюсь импортировать и запустить его из другого модуля, который находится в другом каталоге, wxPython вызывает исключение. (Исключением является что-то внутреннее в отношении панели инструментов, которое, я думаю, просто означает, что оно не загружает правильное растровое изображение.)

Что мне делать?

Ответы [ 2 ]

2 голосов
/ 17 мая 2009

«images \ new.png» - это относительный путь, поэтому при загрузке растрового изображения это будет зависеть от того, что является текущим каталогом так что либо вы устанавливаете cur dir

os.chdir("location to images folder")

или есть функция, которая загружается относительно вашей программы, например

def getProgramFolder():
    moduleFile = __file__
    moduleDir = os.path.split(os.path.abspath(moduleFile))[0]
    programFolder = os.path.abspath(moduleDir)
    return programFolder

bmpFilePath = os.path.join(getProgramFolder(), "images\\new.png")
1 голос
/ 17 мая 2009

FAQ wxPython рекомендует использовать инструмент под названием img2py.py для встраивания файлов значков в модуль Python. Этот инструмент поставляется с дистрибутивом wxPython.

Вот пример встраивания значков панели инструментов .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...