Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 04-12-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 23
Caro Va por buen camino
Cita:
Empezado por Bauhaus1975 Ver Mensaje
¿Existe alguna manera sin usar un componente externo?
Hola, pintando a mano si se puede, debes colocar la propiedad OwnerDraw a True y utilizar el evento OnDrawTab.

Código Delphi [-]
procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
 Re : TRect;
 Titulo : String;
begin
 Re := Rect;
 Titulo := PageControl1.Pages[TabIndex].Caption;
 
 //Para las letras
 if Active then
  begin
   Control.Canvas.Font.Style := [fsBold];
   Control.Canvas.Font.Color := clRed;
  end
 else
  Control.Canvas.Font.Color := clBlack;
 
 //Paar el fondo
 Control.Canvas.Brush.Color := clYellow;
 
 Control.Canvas.FillRect(Re);
 
 //esta línea es para que el TabSheet tome el color de fondo del Tab
 PageControl1.Pages[TabIndex].Brush.Color:=Control.Canvas.Brush.Color;
 
 DrawText(
    Control.Canvas.Handle, PChar(Titulo), Length(Titulo), Re,
    DT_CENTER or DT_VCENTER or DT_SINGLELINE);
end;

Ahora para que se vea mas bonito, pones el PageControl dentro de un panel con Align=alClient y le das un color mas bajo al panel (en nuestro ejemplo un amarillo mas bajito), así tomara ese color el pagecontrol y cuando se ingrese a un tabsheet se maracara todo del color amarillo.

El unico problema que veo es que la primera vez no funciona, tienes que entrar a un TabSheet para que despues tenga ese efecto.

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.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Se puede cambiar el estilo de un boton?¿?¿? douglas OOP 6 23-09-2008 18:45:58
Problema al cambiar estilo en windows aog Varios 3 26-10-2007 17:16:06
Evento para cambiar Tabsheet creus Varios 2 05-02-2007 11:41:12
Cambiar el estilo de fuente de un edit creus Varios 2 21-10-2006 20:34:47
cambiar el estilo del texto de MessageBox? Er_Manué Varios 1 16-12-2004 14:49:02


La franja horaria es GMT +2. Ahora son las 10:20:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi