Delphi tcustomcontrol/twincontrol
Delphi tcustomcontrol/twincontrol
谁能解释一下哪个控件更适合创建自定义组件? twincontrol和tcustomcontrol有什么区别?
提前致谢
Can someone please explain me which control is better to create custom componens?
这取决于您制作的组件类型及其要求。
它是视觉的吗?
如果没有,使用TComponent
.
如果是,是否需要自己的HWND
(输入焦点、window消息等)?
如果没有,使用TGraphicControl
.
如果是,是否需要自己自定义画图?
如果是,使用TCustomControl
.
如果没有,使用TWinControl
。
What is the difference between twincontrol and tcustomcontrol?
TCustomControl
是 TWinControl
的后代,它在 TWinControl
所做的事情之上为 WM_PAINT
消息添加了一些额外的处理。 TCustomControl
公开了一个 public Canvas
属性 供您使用。在绘画期间,它启用 ControlState
属性 中的 csCustomPaint
标志,然后调用您的组件可以覆盖的虚拟 Paint()
方法。所以 TCustomControl
的好处是它使自定义绘画更容易管理。仅此而已。
谁能解释一下哪个控件更适合创建自定义组件? twincontrol和tcustomcontrol有什么区别?
提前致谢
Can someone please explain me which control is better to create custom componens?
这取决于您制作的组件类型及其要求。
它是视觉的吗?
如果没有,使用
TComponent
.如果是,是否需要自己的
HWND
(输入焦点、window消息等)?如果没有,使用
TGraphicControl
.如果是,是否需要自己自定义画图?
如果是,使用
TCustomControl
.如果没有,使用
TWinControl
。
What is the difference between twincontrol and tcustomcontrol?
TCustomControl
是 TWinControl
的后代,它在 TWinControl
所做的事情之上为 WM_PAINT
消息添加了一些额外的处理。 TCustomControl
公开了一个 public Canvas
属性 供您使用。在绘画期间,它启用 ControlState
属性 中的 csCustomPaint
标志,然后调用您的组件可以覆盖的虚拟 Paint()
方法。所以 TCustomControl
的好处是它使自定义绘画更容易管理。仅此而已。