2005年5月18日, 发布于:
http://zyyang.spaces.live.com/blog/cns!193DAE30814DFA36!225.entry
很简单的做了一下.
- procedure TRoundRectPanel.paint;
- begin
- Canvas.Pen.Color:= FBorderColor;
- Canvas.RoundRect(1,1,Width-1, Height-1, 10, 10);
- end;
- procedure TRoundRectPanel.resize;
- var
- rgn:HRGN;
- begin
- inherited;
- if RoundRect then
- rgn:=CreateRoundRectRgn(0,0,width,height,10,10)
- else
- rgn:=CreateRectRgn(0,0,width,height);
- SetWindowRgn(handle,rgn,True);
- DeleteObject(rgn);{}
- end;
这篇博客介绍了如何在Delphi中简单实现一个带有圆角的Panel控件。通过自定义paint和resize方法,利用Canvas的RoundRect函数绘制圆角,并通过CreateRoundRectRgn创建相应区域来实现控件的圆角效果。
626

被折叠的 条评论
为什么被折叠?



