Imagen en pestaña de TPageControl
Publicado por Christian (15 intervenciones) el 29/06/2008 03:06:00
Hola a todos he estado buscando la manera de sustituír la pestaña del TPageControl por una imagen personalizada, y he logrado hacer lo siguiente en el evento OnDrawTab (con la propiedad OwnerDraw = False)
procedure TfrmPrincipal.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
TabRect: TRect;
begin
TabRect := Control.TabRect(TabIndex);
with control.Canvas do
begin
case TabIndex of
0:
begin
Rectangle(tabRect);
if Active then
StretchDraw(TabRect, Image3.Picture.Graphic)
else
StretchDraw(TabRect, Image2.Picture.Graphic);
end;
end;
end;
end;
El detalle está en que el borde de la pestaña afecta la imagen que pongo y hace parecer que la imagen está dentro de la pestaña, quisiera saber si hay una forma de borrar toda la pestaña antes de dibujar la imagen?, para que se vea que la imagen es la pestaña y no la imagen esté dentro de la pestaña
De antemano muchas gracias
Saludos
Christian
procedure TfrmPrincipal.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
var
TabRect: TRect;
begin
TabRect := Control.TabRect(TabIndex);
with control.Canvas do
begin
case TabIndex of
0:
begin
Rectangle(tabRect);
if Active then
StretchDraw(TabRect, Image3.Picture.Graphic)
else
StretchDraw(TabRect, Image2.Picture.Graphic);
end;
end;
end;
end;
El detalle está en que el borde de la pestaña afecta la imagen que pongo y hace parecer que la imagen está dentro de la pestaña, quisiera saber si hay una forma de borrar toda la pestaña antes de dibujar la imagen?, para que se vea que la imagen es la pestaña y no la imagen esté dentro de la pestaña
De antemano muchas gracias
Saludos
Christian
Valora esta pregunta


0