我是Python和WX的新手.我创建了一个如下所示的简单测试对话框,提示用户使用组合框.我想从主程序中的combox中捕获值.我如何从我的主程序中调用它?
这就是我打算调用它来显示对话框但目前没有从组合框中捕获值的方法:
import highlight
highlight.create(self).Show(True)
a = highlight.OnComboBox1Combobox(self)
print a
Run Code Online (Sandbox Code Playgroud)
Dialog文件的名称是"highlight".以下是代码:
#Boa:Dialog:Dialog2
import wx
def create(parent):
return Dialog2(parent)
[wxID_DIALOG2, wxID_DIALOG2COMBOBOX1, wxID_DIALOG2STATICTEXT1,
] = [wx.NewId() for _init_ctrls in range(3)]
class Dialog2(wx.Dialog):
def _init_ctrls(self, prnt):
# generated method, don't edit
wx.Dialog.__init__(self, id=wxID_DIALOG2, name='', parent=prnt,
pos=wx.Point(264, 140), size=wx.Size(400, 485),
style=wx.DEFAULT_DIALOG_STYLE, title='Dialog2')
self.SetClientSize(wx.Size(384, 447))
self.comboBox1 = wx.ComboBox(choices=['test1', 'test2'],
id=wxID_DIALOG2COMBOBOX1, name='comboBox1', parent=self,
pos=wx.Point(120, 16), size=wx.Size(130, 21), style=0,
value=u'wining\n')
self.comboBox1.SetToolTipString(u'comboBox1')
self.comboBox1.SetLabel(u'wining\n')
self.comboBox1.Bind(wx.EVT_COMBOBOX, self.OnComboBox1Combobox,
id=wxID_DIALOG2COMBOBOX1)
self.staticText1 = wx.StaticText(id=wxID_DIALOG2STATICTEXT1,
label=u'test', name='staticText1', parent=self, pos=wx.Point(88,
16), size=wx.Size(19, 13), style=0)
def …Run Code Online (Sandbox Code Playgroud) 当我通过启动脚本"Boa.py"从命令行启动boa-constructor时,我收到消息"
D:\Python27\Lib\site-packages\boa-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:\Python27\Lib\site-packages\boa-constructor\Preferences.py", line 151
in <module>
execfile(file)
File "C:\Users\madfrog\.boa-constructor\prefs.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'
Run Code Online (Sandbox Code Playgroud)
我的python版本是2.7.4,我下载了wxPyton"32位Python 2.7".有人说它是因为wxPython版本无与伦比,但对我来说只有64位或32位,我不知道如何处理这个问题.也许我应该重新安装python,哪个版本是2.6?
谢谢你的帮助.
在Boa Constructor的安装屏幕上,它说在注册表中找到了Python 2.2和3.1,但是我使用2.7作为我的主要版本.我怎样才能让它识别出来?