whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

54 Visitors Online


 
...show controls with rounded corners?
Autor: P. Below
Homepage: http://www.teamb.com
[ Print tip ]  

Tip Rating (46):  
     




procedure MakeRounded(Control: TWinControl);
var
  
R: TRect;
  Rgn: HRGN;
begin
  with 
Control do
  begin
    
R := ClientRect;
    rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 20, 20);
    Perform(EM_GETRECT, 0, lParam(@r));
    InflateRect(r, - 5, - 5);
    Perform(EM_SETRECTNP, 0, lParam(@r));
    SetWindowRgn(Handle, rgn, True);
    Invalidate;
  end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
  
// TMemo:
  
Memo1.BorderStyle := bsNone;
  MakeRounded(Memo1);
  // TEdit:
  
Edit2.BorderStyle := bsNone;
  MakeRounded(Edit2);
  // TPanel:
  
MakeRounded(Panel1);
  // TStaticText:
  
MakeRounded(StaticText1);
  // TForm
  
Form1.BorderStyle := bsNone;
  MakeRounded(Form1);
end;

 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners