delphi 使控件变成圆角的方法
procedure RoundControl(Control: TWinControl; arc1, arc2: Integer); var R: TRect; Rgn: HRGN; begin with Control do begin R := Control.ClientRect; Rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, arc1, arc2); Perform(EM_GETRECT, 0, lParam(@R)); InflateRect(R, -5, -5); Perform(EM_SETRECTNP, 0, lParam(@R)); SetWindowRgn(Control.Handle, Rgn, True); Invalidate; end; end;
posted on 2020-03-16 17:22 windsonvip 阅读(302) 评论(0) 编辑 收藏 举报