Cor na Aba do TabSheet ??????
27/07/2004
0
Boa Tarde!
É possível mudar a cor do componente TabSheet? quando mudo a cor dele tudo bem mais a aba(orelhinha) continua com a cor default, voçês sabem de alguma propriedade onde possa mudar a cor?
Já conversei com várias pessoas e nada. Será que é um bug do Delhi?
Agradeço desde já!
Mmbarros
Posts
27/07/2004
Motta
28/07/2004
Fabio.hc
Coloque este evento em todas as TabSheet´s. Destaca a TabSheet selecionada.
procedure TForm1.TabSheet1Hide(Sender: TObject); begin (sender as TTabSheet).Highlighted:=false; end; procedure TForm1.TabSheet1Show(Sender: TObject); begin (sender as TTabSheet).Highlighted:=true; end;
28/07/2004
Emerson Nascimento
28/07/2004
Mmbarros
28/07/2004
Emerson Nascimento
begin
    if Active then
    begin
        Control.Canvas.Font.Color := clWhite;
        Control.Canvas.Brush.Color := clBlue;
    end
    else
    begin
        Control.Canvas.Brush.Color := clWindowText;
        Control.Canvas.Brush.Color := clBtnFace;
    end;
    Control.Canvas.FillRect( Rect );
    Control.Canvas.TextOut( Rect.Left+5,Rect.Top+4,TTabSheet(PageControl1.Pages[TabIndex]).Caption );
end;
27/02/2023
Sérgio Siqueira
FCorTabNaoSelecionada: TColor;
FCorTabSelecionada := $00E6DEF7;
FCorTabNaoSelecionada := clWhite;
procedure TfrmPrincipal.pcPrincipalDrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean);
function ObterCor(Tab: Integer): TColor;
begin
if (pcPrincipal.TabIndex = TabIndex) then
Result := CorTabSelecionada
else
Result := FCorTabNaoSelecionada;
end;
begin
inherited;
Control.Canvas.Brush.Color := ObterCor(TabIndex);
Control.Canvas.FillRect(Rect);
pcPrincipal.canvas.font.color:=clBlack;
Control.Canvas.TextOut(Rect.left+2,Rect.top+2,TTabSheet(pcPrincipal.Pages[tabindex]).Caption);
pcPrincipal.Pages[TabIndex].Font.Color:=clblack;
end;
Marque a propriedade OwnerDraw no objecto inspector como true.
Clique aqui para fazer login e interagir na Comunidade :)