Mascarar o Componente TDateTimePicker - Método 2

Delphi

29/01/2014

2) MÉTODO USA A CLASSE "COMMCTRL" NA UNIT.
// Procedure para mascarar o objeto (campo) "TDateTimePicker", quando este for nulo.
// No FireBird, os valores de campo tipo TDateTime são mostrados com o valor "30/12/1899".
// Esta rotina, coloca a máscara desejada, no meu caso defini "__/__/____", com o DateTime_SetFormat.
// É incluir usar a classe "Commctrl", no uses.
// Versão: Delphi XE4.

procedure MascaraCamposDateTimePicker(Formulario: TForm; EmEdicao: boolean);
var
ii: integer;
sData: string;
begin
// É necessário incluir a classe "Commctrl", no uses.
with Formulario do
begin
for ii := 1 to ComponentCount - 1 do
begin
if Components[ii] is TCommonCalendar then
begin
sData := Copy(DataHoraParaCaracter((Components[ii] as TDateTimePicker)
.DateTime), 1, 10);
if sData = '30/12/1899' then
begin
DateTime_SetFormat((Components[ii] as TDateTimePicker).Handle,
'__/__/____');
if EmEdicao then
begin
DateTime_SetFormat((Components[ii] as TDateTimePicker).Handle, '');
(Components[ii] as TDateTimePicker).DateTime := Now;
end;
end
else
DateTime_SetFormat((Components[ii] as TDateTimePicker).Handle, '');
end;
end;
end;
end;

// No formulário que são mostrados os campos TDateTimePicker, inclua uma chamada para a procedure acima.
// Onde "Self" é o formulário em uso, e "False/True", se o registro está em modo de edição ou não.
// Pronto, o resto a procedure trata.
MascaraCamposDateTimePicker(Self, False)

Eduardo

Eduardo

Curtidas 0
POSTAR