Delphi 下如何实现异形控件(比如:圆角矩形的button 、 edit)呢?

2025-01-06 05:30:37
推荐回答(4个)
回答1:

var
rgn: HRGN;
begin
//pnl1:TPanel
pnl1.Color:=clRed; //将颜色设置红色,更明显。
rgn := CreateEllipticRgn(0, 0,pnl1.Width, btn1.Height); //创建椭圆区域,也可以是其他区域
SetWindowRgn(pnl1.Handle, rgn, True); //设置对象在画在哪个区域上
end;

回答2:

使用第三方控件raize,其中有一个好像是shapebutton的控件或皮肤控件

回答3:

可以是用canvas自己画,不过这样很难看,基本上都是使用图片来做的,使用PNG的话会达到很绚的效果。

回答4:

做成图片吧,加载图片,然后点击,显示阴影不同的形状