控件编辑器问题,请各路高手进来看看。(200分)

  • 主题发起人 主题发起人 balaschen
  • 开始时间 开始时间
B

balaschen

Unregistered / Unconfirmed
GUEST, unregistred user!
我做了一个下拉组合框,下拉框是一个TStringGrid的派生类,现在的问题是如何制作下拉框
在设计阶段的编辑器?

请各路控件高手帮忙解决,没事也请帮忙提前,谢谢。
 
应该是从 TComponentEditor 继承吧。主要是重载 Edit 方法。弹出一个 Form,在 Form
上放个你派生的 TStringGrid,让用户可视化地编辑,关闭时将 Form 中 Grid 的属性值
赋给所设计的 Grid。
一个有问题的地方是设计时这些属性如何被存入dfm文件及运行时如何从资源中读出。不知
你的 Grid 是在什么时候创建的?
 
控件建立时建立的。
 
那应该重载控件的 DefineProperties 方法,读写所包含的 Grid 的属性。至于控件编辑器,
跟你的控件是紧密相关的,不知道该怎么说了。
 
上面说得我都知道,我的主要问题是我如何显示一个编辑器(用一个Form加上一个StringGrid)
,能利用Object Inspector来编辑Grid的属性,我用的是IFormDesigner(Desinger).SelectComponent(Grid)
来选择控件,但是当我编辑完返回是,我的组合框没有重绘,我已经调用了Designer.Modified.
 
返回之前将编辑器中 Grid 的属性 Assign 给你控件中的 Grid 了吗?需要写代码赋值的。
 
我已经解决,方法是不再用Object Inspector来编辑Grid的属性,而是用dxInspector自己做
了一个属性编辑器。
再等一天,看看哪位大虾还有高招。
谢谢bbkxjy的积极参与。
 
接受答案了.
 
后退
顶部