Como incrementar a StatusBar

 

No formulário principal coloque uma statusbar com 3 panels, 1 time e AplicationEvents e digite as funções abaixo:

 

function mostrahora: string;

begin

  mostrahora := timetostr(time);

end;

 

function mostradata: string;

var

  dthoje: TDatetime;

  diasemana: integer;

  strdiasemana: string;

begin

  dthoje := date;

  diasemana := dayofweek(dthoje);

  case diasemana of

  1: strdiasemana := 'Domingo';

  2: strdiasemana := 'Segunda-feira';

  3: strdiasemana := 'Terça-feira';

  4: strdiasemana := 'Quarta-feira';

  5: strdiasemana := 'Quinta-feira';

  6: strdiasemana := 'Sexta-feira';

  7: strdiasemana := 'Sábado';

  end;

  mostradata := strdiasemana+' '+datetostr(dthoje);

end;

 

Selecione o AplicationEvents e na guia eventos do objeto inspector depois clique no evento OnHint e digite o código:

 

procedure TForm1.ApplicationEvents1Hint(Sender: TObject);

Begin

  StatusBar1.Panels[2].Text := Application.Hint;

// todos os hints do seu projeto apareceram no statusbar

end;

 

// agora faça com que suas funções apareçam o resultado

procedure TForm1.Timer1Timer(Sender: TObject);

var

  presente: TDatetime;

  ano,mes,dia: word;

begin

  presente := now;

  decodedate(presente, ano, mes, dia);

  case mes of

  1:STATUSBAR1.PANELS[1].TEXT := ' JANEIRO '+inttostr(ano);

  2:STATUSBAR1.PANELS[1].TEXT := 'FEVEREIRO'+inttostr(ano);

  3:STATUSBAR1.PANELS[1].TEXT := 'MARÇO '+inttostr(ano);

  4:STATUSBAR1.PANELS[1].TEXT := 'ABRIL '+inttostr(ano);

  5:STATUSBAR1.PANELS[1].TEXT := 'MAIO '+inttostr(ano);

  6:STATUSBAR1.PANELS[1].TEXT := 'JUNHO '+inttostr(ano);

  7:STATUSBAR1.PANELS[1].TEXT := 'JULHO '+inttostr(ano);

  8:STATUSBAR1.PANELS[1].TEXT := 'AGOSTO '+inttostr(ano);

  9:STATUSBAR1.PANELS[1].TEXT := 'SETEMBRO '+inttostr(ano);

  10:STATUSBAR1.PANELS[1].TEXT := 'OUTUBRO '+inttostr(ano);

  11:STATUSBAR1.PANELS[1].TEXT := 'NOVEMBRO '+inttostr(ano);

  12:STATUSBAR1.PANELS[1].TEXT := 'DEZEMBRO '+inttostr(ano);

  end;

  STATUSBAR1.PANELS[0].TEXT := mostrahora();

  STATUSBAR1.PANELS[1].TEXT := mostradata();

end;