TColorButton cu proprietăți de culoare

Culoarea de fundal a unui TButton este controlată de Windows, nu de Delphi. TButton este un înveliș simplu în jurul butonului Windows standard, iar Windows nu îi permite să fie colorat decât prin alegerea culorilor din Panoul de control. 

Aceasta înseamnă că nu puteți seta culoarea de fundal a unui TButton și nici nu puteți modifica culoarea de fundal a TBitBtn sau TSpeedButton.

Din moment ce Windows insistă să realizeze colorarea de fundal cu clBtnFace, singura modalitate de a-l schimba este să desenați singur butonul, făcând o componentă de buton desenată de proprietar.

Cod sursă TColorButton

TColorButton adaugă trei proprietăți noi TButton-ului standard:

  • Culoare de fundal - Specifică culoarea de fundal a butonului
  • Culoarea din fata - Specifică culoarea textului butonului. Rețineți că acest lucru „înlocuiește” proprietatea Font.Color
  • HoverColor - Specifică culoarea folosită pentru a picta fundalul butonului atunci când mouse-ul trece peste buton.

Iată cum puteți seta proprietățile legate de culoare ale TColorButton la runtime:

ColorButton1.BackColor: = clOlive; //fundal
ColorButton1.ForeColor: = clYelow; //text
ColorButton1.HoverColor: = clNavy; //mouse-ul peste

Instalarea într-o paletă de componente

TColorButton vine ca fișier unitar cu extensia de fișier .PAS. După descărcarea componentei, trebuie să instalați componenta sursă într-un pachet existent.