用Delphi做一个有颜色属性的按钮,该怎么处理

用Delphi做一个有颜色属性的按钮,该怎么处理,第1张

如果是自己开发一枝饥个带颜色属性的按猛丛返钮组件,可以打开Delphi,选择菜单的Component->New Component 来新建一个按钮组件,比如可以继承自 TButton,然后添加 Color 属性,相应的修改 canvas 绘制按钮段的代码。

以下是示例的代码片段:

type

TColorButton = class(TButton)

private

  FColor:TColor

  FCanvas: TCanvas

  IsFocused: Boolean

  procedure SetColor(Value:TColor)

  procedure CNDrawItem(var Message: TWMDrawItem) message CN_DRAWITEM

protected

  procedure 郑碰CreateParams(var Params: TCreateParams) override

  procedure SetButtonStyle(ADefault: Boolean) override

public

  constructor Create(AOwner: TComponent) override

  destructor Destroy override

published

  property Color:TColor read FColor write SetColor default clWhite

end

xe2中任何控件都是容器。所以,你可以把TImage放在tspeedbutton或button上,然后在左边的控件凳桥栏里把Timage拉到按钮下,作为该按钮的子类,这样你就可以在按钮上画图片了。为了响应按钮事件而不是TImage的Onclick事让启件,你要把TImage的hittext(好像是这个属性)设为True,这样枣滑猛点击图片,就响应了按钮的Onclick


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/bake/11986589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存