var
rgn: HRGN;
begin
//pnl1:TPanel
pnl1.Color:=clRed; //将颜色设置红色,更明显。
rgn := CreateEllipticRgn(0, 0,pnl1.Width, btn1.Height); //创建椭圆区域,也可以是其他区域
SetWindowRgn(pnl1.Handle, rgn, True); //设置对象在画在哪个区域上
end;
使用第三方控件raize,其中有一个好像是shapebutton的控件或皮肤控件
可以是用canvas自己画,不过这样很难看,基本上都是使用图片来做的,使用PNG的话会达到很绚的效果。
做成图片吧,加载图片,然后点击,显示阴影不同的形状