delphi – 如何制作自定义组件属性?

前端之家收集整理的这篇文章主要介绍了delphi – 如何制作自定义组件属性?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要帮助来创建一个控件属性,当你点击它时,它会弹出一个自定义对话框,如设置.就像TPicture一样.

任何想法或建议?

解决方法

如果您的类被用作其他组件的属性,并且您想使用Object Inspector来调用对话框,那么您必须实现并注册自定义属性编辑器,例如:
  1. interface
  2.  
  3. uses
  4. DesignIntf,DesignEditors;
  5.  
  6. type
  7. TMyClassProperty = class(TPropertyEditor)
  8. public
  9. procedure Edit; override;
  10. function GetAttributes: TPropertyAttributes; override;
  11. end;
  12.  
  13. procedure Register;
  14.  
  15. implementation
  16.  
  17. uses
  18. MyClassUnit;
  19.  
  20. procedure TMyClassProperty.Edit;
  21. begin
  22. with TMyDialog.Create(nil) do
  23. try
  24. ShowModal;
  25. finally
  26. Free;
  27. end;
  28. end;
  29.  
  30. function TMyClassProperty.GetAttributes: TPropertyAttributes;
  31. begin
  32. Result := inherited GetAttributes + [paDialog];
  33. end;
  34.  
  35. procedure Register;
  36. begin
  37. RegisterPropertyEditor(TypeInfo(TMyClass),nil,'',TMyClassProperty);
  38. end;

猜你在找的Delphi相关文章