频道分类

Delphi 使控件变成圆角的方法

作者:admin 来源: 日期:2020/3/28 23:07:07 人气: 标签:

 
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;

上一篇:Delphi edit只允许输入数字下一篇:没有资料