我正在使用JvInspector来编辑我的类的属性。 TColor属性在JvInspector编辑器中显示为“clRed”等,并乐于接受类似输入的颜色名称。我真的想要和TFont一样出现的功能,其中有一个打开TFontDialog的省略号按钮 - 对于TColor属性我想要一个TColorDialog(或我自己的一个)。我看到JvInspector如何通过特定编辑声明TJvInspectorFontItem,但我无法弄清楚如何告诉检查员来找我进行TColor编辑 - 我希望看到一个寄存器,我可以添加我的TColor类型和我的新编辑功能
从this SO question获取的解决方法如下给我“点击”功能,我可以用它来打开TColorDlg,但它对用户来说并不直观,而且不如省略号按钮解决方案那么好。
procedure TSimpleMainForm.ItemClick(ASender: TObject);
begin
ShowMessage(JvInspector1.Selected.Name); // << my edit would go here
Abort; // don't change the value by the default double click handler
end;
procedure TSimpleMainForm.JvInspector1BeforeEdit(Sender: TObject;
Item: TJvCustomInspectorItem; Edit: TCustomEdit);
begin
TEdit(Edit).OnClick := ItemClick;
end;
任何人都可以帮助或指出我合适的文件吗? 感谢
答案 0 :(得分:1)
这篇文章有一些很好的例子http://www.neugls.info/the-tjvinspector-component-of-jvcl/
在子标题如何制作自己的项目下,有一个颜色对话框的代码示例。