Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Cor da fonte na TStatusBar


nsouza

Pergunta

8 respostass a esta questão

Posts Recomendados

  • 0
Colegas,

meu programa tem a TStatusBar cor azul e a fonte cor preta, eu gostaria de colocar a cor da fonte Branca, mas

não consegui, desde modo fica dificil para o usuario ler as informações de ajuda.

Como faço para colocar a cor da fonte Branca?

Obrigado!

Pois é amigo, na verdade eu refiz esta ação, e mesmo assim não deu certo. Coloquei a cor amarela

mas quando rodo o sistema continua preto, ou seja, não deu efeito!

Link para o comentário
Compartilhar em outros sites

  • 0
meu programa tem a TStatusBar cor azul e a fonte cor preta, eu gostaria de colocar a cor da fonte Branca, mas

não consegui, desde modo fica dificil para o usuario ler as informações de ajuda.

Como faço para colocar a cor da fonte Branca?

Exemplo

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
  Panel: TStatusPanel; const Rect: TRect);
begin

   if Panel.Index=0 then
   begin
      StatusBar1.Canvas.Font.Color := clBlue;
      StatusBar1.Canvas.brush.Color:=$D1D1D1;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=1 then
   begin
      StatusBar1.Canvas.Font.Color := clRed;
      StatusBar1.Canvas.brush.Color:= clYellow;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=2 then
   begin
      StatusBar1.Canvas.Font.Color := clWhite;
      StatusBar1.Canvas.brush.Color:= clLime;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=3 then
   begin
      StatusBar1.Canvas.Font.Color := clBlack;
      StatusBar1.Canvas.brush.Color:= clWhite;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

end;

OBS: mude a propriedade Style = psOwnerDraw para cada panel

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
meu programa tem a TStatusBar cor azul e a fonte cor preta, eu gostaria de colocar a cor da fonte Branca, mas

não consegui, desde modo fica dificil para o usuario ler as informações de ajuda.

Como faço para colocar a cor da fonte Branca?

Exemplo

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
  Panel: TStatusPanel; const Rect: TRect);
begin

   if Panel.Index=0 then
   begin
      StatusBar1.Canvas.Font.Color := clBlue;
      StatusBar1.Canvas.brush.Color:=$D1D1D1;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=1 then
   begin
      StatusBar1.Canvas.Font.Color := clRed;
      StatusBar1.Canvas.brush.Color:= clYellow;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=2 then
   begin
      StatusBar1.Canvas.Font.Color := clWhite;
      StatusBar1.Canvas.brush.Color:= clLime;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

   if Panel.Index=3 then
   begin
      StatusBar1.Canvas.Font.Color := clBlack;
      StatusBar1.Canvas.brush.Color:= clWhite;
      StatusBar1.Canvas.FillRect(Rect);
      StatusBar1.Canvas.TextOut(Rect.Left + Font.Size, Rect.Top + 1, Panel.Text );

   end;

end;

OBS: mude a propriedade Style = psOwnerDraw para cada panel

abraço

Caro Jhonas,

este procedimento eu tenho que criar ou colo ele em algum evento?

Link para o comentário
Compartilhar em outros sites

  • 0
no exemplo do nosso amigo jonas, já fála tudo:

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar...

coloque a função no evento OnDrawPanel ...

abraços !!

Segui todas as instruções acima, mas deu o seguinte erro marcando a linha abaixo

"Not enough actual parameters"

procedure TF_Menu.LinhaStatusDrawPanel(StatusBar: TStatusBar;

Panel: TStatusPanel; const Rect: TRect);

begin

LinhaStatusDrawPanel;

end;

Editado por nsouza
Link para o comentário
Compartilhar em outros sites

  • 0
procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;

Panel: TStatusPanel; const Rect: TRect);

procure este evento dentro do componente ... OnDrawPanel

é só colocar o codigo lá dentro e criar os panels e mudar a propriedade Style = psOwnerDraw para cada panel

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;

Panel: TStatusPanel; const Rect: TRect);

procure este evento dentro do componente ... OnDrawPanel

é só colocar o codigo lá dentro e criar os panels e mudar a propriedade Style = psOwnerDraw para cada panel

abraço

Caros Jhonas,

funcionou perfeitamente, muito obrigado!

Como faço para colocar o post

(Resolvido) TStatusBar no titulo do post

obrigado

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...