可以在IronPython中使用wxPython吗?

4
当我的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

不,这样行不通。Wx绑定(像大多数其他“Python绑定”一样)实际上是针对CPython编译的。

在这方面,它们不仅仅是可以在sys.path上找到的包,正如你所尝试的那样。它们实际上依赖于CPython本身。这篇相当枯燥的文档解释了这个过程。

注意:Resolver Systems的一些成员曾经有一个任务,允许您使用IronPython与CPython绑定(称为IronClad),但这还处于早期阶段,我认为他们将首先集中精力使诸如Numpy之类的东西运行起来,GUI工具包总是最后且最难的。


谢谢。我就知道这会是答案。 - Charles Anderson
我认为如果你想使用IronPython获得跨平台UI,你只能选择以下两种:1. Windows Forms,2. GTK#。 - Ali Afshar

5

尽管由于@Ali列出的原因,wxPython不可用,但您可能想看看wx.NET。您可以使用IronPython来调用这些程序集,它应该是跨平台的(我假设这就是您想要的,否则您将只使用WinForms)。如果您只是寻找API兼容性,我认为您很不幸 :(


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接