您的位置:首页 > 编程语言 > Python开发

wxPython中PropertyGrid控件的简单用法

2012-04-09 10:26 381 查看
pg.Append( wxpg.PropertyCategory("1 - Basic Properties") )
pg.Append( wxpg.StringProperty("String",value="Some Text") )
pg.Append( wxpg.IntProperty("Int",value=100) )
pg.Append( wxpg.FloatProperty("Float",value=100.0) )
pg.Append( wxpg.BoolProperty("Bool",value=True) )
pg.Append( wxpg.BoolProperty("Bool_with_Checkbox",value=True) )
pg.SetPropertyAttribute("Bool_with_Checkbox", "UseCheckbox", True)

以上提供了5种属性窗口,其中BOOL属性有两种选择方式:ComboBox / CheckBox。

pg.Append( wxpg.PropertyCategory("2 - More Properties") )
pg.Append( wxpg.LongStringProperty("LongString",
value="This is a\\nmulti-line string\\nwith\\ttabs\\nmixed\\tin."))
pg.Append( wxpg.DirProperty("Dir",value="C:\\Windows") )
pg.Append( wxpg.FileProperty("File",value="C:\\Windows\\system.ini") )
pg.Append( wxpg.ArrayStringProperty("ArrayString",value=['A','B','C']) )

pg.Append( wxpg.EnumProperty("Enum","Enum",
['wxPython Rules',
'wxPython Rocks',
'wxPython Is The Best'],
[10,11,12],
0) )
pg.Append( wxpg.EditEnumProperty("EditEnum","EditEnumProperty",
['A','B','C'],
[0,1,2],
"Text Not in List") )
ArrayStringProperty - 不常用,会弹出一个可编辑的选择窗口。

EnumProperty - 枚举属性,常用,下拉列表式选择,不可更改(EditEnumProperty可改)。

控件问题:列表中的选择项不可更换(也许我没找到对应的API?!)

临时方案:删除该项,在重新添加。

pg.DeleteProperty("Key")


EnumProperty - 最后一个参数只接受整数。

EditEnumProperty - 最后一个参数只接受字符串。

获取属性值:

pg.GetPropertyValue("Key")


注:EditEnumProperty 的返回值有字符串和数值两种。

或者
pg.GetPropertyValue(pg.GetPropertyByLabel("Label"))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: