Você está aqui: Delphi ::: Dicas & Truques ::: Data e Hora |
Como acessar e retornar nomes de dias longos a partir da matriz LongDayNamesQuantidade de visualizações: 10454 vezes |
A matriz (array) LongDayNames é uma matriz de strings disponível na unit SysUtils e contém os nomes dos dias no formato longo (domingo, segunda-feira, terça-feira, etc). Esta matriz contém sete elementos e possui a seguinte declaração:LongDayNames: array[1..7] of string; Assim, veja um trecho de código no qual usamos um laço for para percorrer a matriz LongDayNames e exibir os nomes dos dias, começando no domingo e terminando no sábado: procedure TForm1.Button1Click(Sender: TObject); var i: integer; begin for i := 1 to 7 do begin // vamos adicionar o nome do dia em um TMemo Memo1.Lines.Add(LongDayNames[i]); end; end; Quando executamos este código temos o seguinte resultado: domingo segunda-feira terça-feira quarta-feira quinta-feira sexta-feira sábado Um bom uso da matriz LongDayNames é quando temos um número representando o dia da semana e gostaríamos de obter o nome do dia (no formato longo) correspondente. Veja: procedure TForm1.Button1Click(Sender: TObject); begin // vamos exibir o nome do dia de hoje no formato longo ShowMessage('Hoje é: ' + LongDayNames[DayOfWeek(Now)]); end; Este trecho de código exibirá um mensagem semelhante à: "Hoje é: sexta-feira" Aqui nós obtemos o número do dia usando a função DayOfWeek() e usamos o valor retornado para acessar o elemento da matriz LongDayNames. Como DayOfWeek() retorna 1 para o domingo, estas duas funções podem ser usadas em conjunto sem qualquer problema. Note, porém, que a norma ISO 8601 define o início da semana como segunda-feira e não domingo. Assim, se trocarmos a função DayOfWeek(), que não obedece a norma pela função DayOfTheWeek(), que a obedece, o trecho de código acima pode trazer um resultado completamente diferente: ShowMessage('Hoje é: ' + LongDayNames[DayOfTheWeek(Now)]); Agora a mensagem será: "Hoje é: quinta-feira" Para finalizar, saiba que a matriz LongDayNames é preenchida a partir da entrada de localização do sistema LOCALE_SDAYNAME, ou seja, os valores a serem exibidos dependem das configurações do sistema no qual a aplicação está sendo executada. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |