Ver Mensaje Individual
  #3  
Antiguo 19-10-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 24
Caro Va por buen camino
Hola Jose, también lo puedes hacer de esta forma, utilizando la función DrawText para darle formato al texto.

Código Delphi [-]
procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
 Re : TRect;
 Titulo : String;
begin
 Titulo := PageControl1.Pages[TabIndex].Caption;
 Re := Rect;
 
 if Active then
  PageControl1.Canvas.Font.Color := clRed
 else
  PageControl1.Canvas.Font.Color := clBlack;
   
  DrawText(               
    PageControl1.Canvas.Handle, PChar(Titulo), Length(Titulo), Re,
    DT_CENTER or DT_VCENTER or DT_SINGLELINE);
end;

El parametro Active te indica si ese TabSheet esta activo si es asi pinta de rojo, otra cosita debes colocar a True la propiedad OwnerDraw del PageControl para que haga el pintado, en el otro hilo no estaba especificado eso.

Si quieres que todos se pinten de un color entonces le quitas la condición y paar no repetir PageControl1 utilizas With.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.

Última edición por Caro fecha: 19-10-2008 a las 23:41:08.
Responder Con Cita