Arrondir les angles de vos composants

procedure Edit_MakeRound(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;
Edit_MakeRound(Memo1);
// TEdit:
Edit2.BorderStyle := bsNone;
Edit_MakeRound(Edit2);
// TPanel:
Edit_MakeRound(Panel1);
// TStaticText:
Edit_MakeRound(StaticText1);
end;
Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour06/03/2002
VisualisationVu 1844 fois
PublicInternaute zz
CategorieDelphi - Trucs et astuces - Objet
Auteur de l'article
SwissDelphiCenter SwissDelphiCenter
connecté le 02/11/2011
329 articles dans la section
Contacter l'auteur