Alterar o formato da Data do Windows.

Delphi

06/07/2004

Quero saber se é possível alterar o formato da Data do Windows. Por exemplo, para dd/mm/aaaa
Porque tenho um componente (DateEdit) que utiliza o formato que estiver no Windows. Portanto queria que toda vez que meu programa fosse executado, o formato da Data do Windows fosse alterado para dd/mm/aaaa.

Obrigado pela atenção e pela ajuda.


Bossoni

Bossoni

Curtidas 0

Respostas

Koplin

Koplin

06/07/2004

coloque shortdateformat:=´dd/mm/yyyy´ no evento OnCreate do form
O Delphi prove vários elemento para tornar a exibição de formatos independente do windows

digite shortdateformat na unit e tecle F1 e vc obterá maiores informações no help do Delphi


GOSTEI 0
Bossoni

Bossoni

06/07/2004

O componente que eu tenho, o cxDateEdit, mesmo com essa alteração que vc disse no OnCreate, ele continua utilizando o formato da data do Windows.

Aí eu coloquei no evento OnExit do DateEdit a seguinte linha.
DateEdit1.EditValue := DateToStr(DateEdit1.Date);

Aí deu certo, mas se deixo o campo em Branco, quando saio do DateEdit, aparece 00/00/0000. Só que quero que se o campo estiver em Branco, continue em Branco.

Já tentei
if DateEdit1.Editvalue <> ´´ then
DateEdit1.EditValue := DateToStr(DateEdit1.Date);

Mas aí aparece em erro de conversão de String para Date. Não sei pq.

Quem puder me ajude, Obrigado


GOSTEI 0
Bossoni

Bossoni

06/07/2004

Se alguém além do koplin souber e quiser ajudar, agradeço.

vlw


GOSTEI 0
Ursulasobrinho

Ursulasobrinho

06/07/2004

{Provavelmente este problema não é um dos mais complexos a ser resolvido em uma aplicação Delphi, mas não é muito confortável ficar dependendo da versão do Windows,do idioma ou da configuração do Painel de Controle.
Para que a sua aplicação funcione bem,independente da torcida,implemente uma chamada ao procedimento abaixo, meses e dias serão ajustados para o português, data será DD/MM/AAAA o separador decimal será o ponto e separador de milhar será a vírgula.}

procedure AcertaPadraoData;
const arrShortDayNames: array[1..7] of string[3] = (´Dom´,´Seg´,´Ter´,´Qua´,
´Qui´,´Sex´,´Sab´);
arrLongDayNames: array[1..7] of string[15] = (´Domingo´,´Segunda´,´Terça´,
´Quarta´,´Quinta´,´Sexta´, ´Sábado´);
arrShortMonthNames: array[1..12] of string[3] = (´Jan´,´Fev´,´Mar´,´Abr´,
´Mai´,´Jun´,´Jul´,´Ago´,´Set´,´Out´,´Nov´,´Dez´);
arrLongMonthNames: array[1..12] of string[15] = (´Janeiro´,´Fevereiro´,
´Março´,´Abril´,´Maio´, ´Junho´,´Julho´,´Agosto´, ´Setembro´,´Outubro´,
´Novembro´,´Dezembro´);
var ii: integer;
begin
ShortDateFormat := ´dd/mm/yyyy´;
DecimalSeparator := ´.´;
ThousandSeparator := ´,´;
for ii := 1 to 7 do
begin
ShortDayNames[ii] := arrShortDayNames[ii];
LongDayNames[ii] := arrLongDayNames[ii];
end;
for ii := 1 to 12 do
begin
ShortMonthNames[ii] := arrShortMonthNames[ii];
LongMonthNames[ii] := arrLongMonthNames[ii];
end;
end;


GOSTEI 0
POSTAR