| 其中参数I可以是KEY(STR)也可以是INDEX(INTEGER)。 4.2.2 普通编辑方式 使用Input Mask ItemProps[I].EditStype:=esSimple; ItemProps[i].Mask:=StrMaskCharacters; MASK串的相应功能可以参考HELP。 4.2.3 使用弹出编辑器 ItemProps[i].EditStyle:=esEllipsis; 用户按下[…]按钮后会触发TvalueListEditor的OnEditButtonClick事件。我们可以在此前的OnClick时间中记录选中的行号: strGlobalSelKey:=vle.Key(vle.Row); 在事件OnEditButtonClick 中判断要打开的编辑窗口。为VLE.STRING每个STRING维护一个TSTRINGLIST,记录编辑样式和弹出窗口ID。 1. 根据SWITCH判断要打开的编辑窗口 2. 将激活的KEY传递给编辑窗口 3. 编辑窗口完成编辑后将VLE.VALUE(KEY):=EditValue;保存返回。 (in FormMain Unit) ...... with FormEdit do begin key:=FormMain.skey; Caption:=''''edit: ''''+skey ; ShowModal ; end; ...... (in FormEditing Unit) ...... formmain.vle.Values[key]:=txtvalue.Text; self.Close; ...... 5 可能会需要用到的一些类型转换函数 l StrToBool l StrToDate/StrToDateTime l StrToFloat l StrToIntDef 6 小结 本文参考的DELPHI 6的帮助文档,并简单描述了TVALUELISTEDITOR的使用方法,研究此控件是为了在一个DELPHI项目中实现自定义控件的动态编辑。只要对该控件进行一层封装就可以被自定义的组件所调用。没有实现的功能为DELPHI中可以展开的项目。
可以到我的YAHOO公文包下载本文档的示例。 http://cn.briefcase.yahoo.com/iamcst 欢迎也很感谢大家给我提出宝贵意见。
上一页 [1] [2] |