当我从命令行启动boa-constructor时,通过启动脚本" boa.py",我得到了消息说"
"D:Python27Libsite-packagesboa-constructor>python Boa.py
Starting Boa Constructor v0.6.1
importing wxPython
reading user preferences
Traceback (most recent call last):
File "Boa.py", line 271, in <module>
import Preferences, Utils
File "D:Python27Libsite-packagesboa-constructorPreferences.py", line 151
in <module>
execfile(file)
File "C:Usersmadfrog.boa-constructorprefs.rc.py", line 26, in <module>
splitterStyle = wx.SP_LIVE_UPDATE | wx.SP_3DSASH | wx.NO_3D
AttributeError: 'module' object has no attribute 'NO_3D'
我的Python版本是2.7.4,我下载了WXPYTON" 32位Python 2.7"。有人这样说是因为无与伦比的wxpython版本,但是我只有64位或32位,我不知道如何解决这个问题。也许我应该重新安装Python,哪个版本为2.6?
感谢您的帮助。
我也有同样的问题。我不能告诉你为什么。我可以告诉你我如何修复它。
下载和解压缩后,BOA文件进入BOA文件夹(在Mac上,这可能是:/users/your_user_name/downloads/boa-constructor-0.6.1)。
然后:对于包含no_3d的每个文件(或使用您想在一组文件中搜索字符串的任何文件,我不知道Windows如何执行此操作):" GREP":就我而言,我做到了: grep -ir no_3d *
出现了一个文件列表。只需编辑每个这样的文件(有〜6),然后删除任何提及" wx.no_3d"。
,例如,在同伴/basecompanions.py中我找到了一个匹配:
"self.windowStyles = ['wx.CAPTION', 'wx.MINIMIZE_BOX', 'wx.MAXIMIZE_BOX',
'wx.THICK_FRAME', 'wx.SIMPLE_BORDER', 'wx.DOUBLE_BORDER',
'wx.SUNKEN_BORDER', 'wx.RAISED_BORDER', 'wx.STATIC_BORDER',.
'wx.TRANSPARENT_WINDOW', 'wx.NO_3D', 'wx.TAB_TRAVERSAL',.
'wx.WANTS_CHARS', 'wx.NO_FULL_REPAINT_ON_RESIZE', 'wx.VSCROLL',.
'wx.HSCROLL', 'wx.CLIP_CHILDREN', 'wx.NO_BORDER', 'wx.ALWAYS_SHOW_SB']"
您在中间的某个地方看到' wx.no_3d '。删除并保存文件。继续为所有文件执行此操作。
但是,一个文件中有一个小的并发症:" ibsiveor.py"。在这里,您不能简单地删除wx.no_3d。特别是,该匹配是: self.Categories = wx.splitterwindow(self,-1, 样式= wx.no_3d |WX.SP_3D |wx.sp_live_update)
我所做的是用" style = wx.default_frame_style"替换" style = wx.no_3d"(我在其他文件之一中找到了此默认名称;您会看到该程序识别的不同的"样式"因此,我只是选择了除no_3d以外的其他样式)。
然后我只是与: " python boa.py"
且它可以使用(假设您已安装了模块WX,并且BOA首先需要进行任何其他需要运行)。
boa构造函数是一个非常古老的项目,已经有7年的释放(或我能看到的任何提议)。该代码很有可能是为WXWindows/WXPython版本较旧的版本编写的,并且WX.NO_3D常数已在以后的WX版本中删除/重命名。您可以在项目邮件列表上看到它已经死了(2013年9条消息)。可惜,真的很好。
看来有人在2012年开始提交的Bitbucket上叉了 - 这可能对您有利。当然,专门针对NO_3D常数有所作为。它可能只能使用wxpython 2.8,但从。
尝试wxpython版本wxpython2.8-win32-unicode-2.8.12.1-py27
我已经卸载了wxpython 2.9.4.0,这给了我attributeError:'module'对象没有属性'no_3d',我已经安装了wxpython2.8-win32-unicode-2.8.8.12.12.12.12.12.12.12.12.12.12.12.12.12.1-py27。BOA构造函数无需更改任何东西!