Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Uso del DateTimePicker, ayuda plz! (https://www.clubdelphi.com/foros/showthread.php?t=58662)

cslbcn 28-07-2008 08:46:00

Uso del DateTimePicker, ayuda plz!
 
Hola a todos. Me acabo de registrar en este foro ya que acabo de empezar a utilizar delphi y como soy un gran novato necesito que me ayudéis! :)

Estoy utilizando un DateTimePicker, una barra desplegable que muestra un calendario. Bien, mi pregunta es ¿cómo hago para que el programa me separe por dia y mes? Es decir, tengo un DateTimePicker y un botón al lado. Si selecciono el 4 de febrero y le doy al botón, quiero que cree un mensaje que ponga: "Hoy el 4 de febrero!" o algo similar.

Si no es necesario el botón también me vale.

Podéis echarme una mano?
Gracias y saludos

duilioisola 28-07-2008 10:21:20

Puedes poner un botón que en el evento OnClick haga lo que quieres o puedes ponerlo en el evento OnChange del TDateTimePicker.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption := 'Today is  ' + DateToStr(Date);
end;
o
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  Present: TDateTime;
  Year, Month, Day, Hour, Min, Sec, MSec: Word;
 begin
  Present:= Now;
  DecodeDate(Present, Year, Month, Day);
  Label1.Caption := 'Today is Day ' + IntToStr(Day) + ' of Month '
    + IntToStr(Month) + ' of Year ' + IntToStr(Year);
  DecodeTime(Present, Hour, Min, Sec, MSec);
  Label2.Caption := 'The time is Minute ' + IntToStr(Min) + ' of Hour '
    + IntToStr(Hour);
end;

Nota: Esto está sacado directamente del help de Delphi6. Si escribes DecodeDate, te posicionas encime con el cursor y presionas F1 te dará el Help de este procedimiento. También puedes ver las demás funciones que hay dentro de esa unidad.

PD. Bienvenido al club!!!

cslbcn 28-07-2008 10:47:04

mmm, curioso.
A ver si puedo adaptarlo a mi proyecto.

Gracias!

Caro 28-07-2008 14:23:15

Hola cslbcn, sobre el codigo que te paso duilioisola, Now se referiere a la fecha actual, si quieres que DecodeDate se aplique a tu DateTimePicker, entonces debes pasarle la fecha que te devuelve tu DateTimePicker.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
 Year, Month, Day : Word;
begin
 DecodeDate(DateTimePicker1.Date, Year, Month, Day);
 Label1.Caption := 'Hoy es ' + IntToStr(Day) + ' de '+ IntToStr(Month) + ' de'+ IntToStr(Year);
end;

Para DecodeTime, tienes que pasarle DateTimePicker1.Time, pero también existe la función DecodeDatetime para que separe en dia, mes, año, hora, minutos, segundos, milisegundos.

Saluditos


La franja horaria es GMT +2. Ahora son las 00:21:38.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi