Можно ли использовать wxPython внутри IronPython? - PullRequest
4 голосов
/ 12 ноября 2008

Когда моя программа IronPython выходит на линию

import wx

Я получаю это сообщение:

A first chance exception of type
'IronPython.Runtime.Exceptions.PythonImportErrorException' occurred in IronPython.dll

Additional information: No module named _core_

хотя у меня есть файл wx \ _core_.pyd. Кроме того, перед попыткой импорта у меня есть строки:

sys.path.append('c:\\Python24\\Lib\\site-packages')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wx')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wx\\lib')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wx-2.6-msw-unicode\\wxpython\\lib')
sys.path.append('c:\\Python24\\Lib\\site-packages\\wxaddons')

, что, я надеялся, позволило IronPython найти все, что ему нужно.

Ответы [ 2 ]

8 голосов
/ 12 ноября 2008

Нет, это не сработает. Привязки Wx (как и большинство других «привязок Python») фактически скомпилированы с использованием CPython.

В этом отношении, это не просто пакеты на sys.path, которые вы пытались найти. На самом деле они зависят от самого CPython. Этот довольно сухой документ объясняет процесс.

Примечание: некоторые члены команды Resolver Systems выполняли задание, позволяющее вам использовать привязки CPython с IronPython (называемый IronClad ), но это на ранних стадиях, и я думаю, что они сосредоточатся если заставить Numpy работать в первую очередь, инструментарий GUI всегда будет последним и самым сложным.

5 голосов
/ 12 ноября 2008

Хотя wxPython недоступен по причинам, указанным @Ali, вы можете взглянуть на wx.NET . Вместо этого вы могли бы использовать IronPython для вызова этих сборок, и он должен быть кроссплатформенным (я полагаю, это то, что вам нужно, или вы просто используете WinForms). Если вам нужна только совместимость с API, думаю, вам не повезло: (

...