Delphi - Como puedo haer para que me avice el programa

 
Vista:

Como puedo haer para que me avice el programa

Publicado por Alma (9 intervenciones) el 10/12/2004 17:46:29
hola....
quisiera que me ayudaran en un problemita
les muestro el codigo.

procedure Tfrmfechahora.date1Change(Sender: TObject);
var
fecha:tdate;
anio,mes,dia:Word;
mesletra,dialetra:string;
begin
fecha:=date1.Date;
DecodeDate(fecha, anio, mes, dia);
edidia.Text:=inttostr(dia);
edimes.Text:=inttostr(mes);
edianio.Text:=inttostr(anio);
case dayofweek(fecha) of
1:dialetra:='Domingo';
..... etc
end;
case mes of
1:mesletra:='Enero';
.... etc
end;
edifecha.Text:= dialetra+', '+inttostr(dia)+' de '+mesletra+' de '+inttostr(anio);
edicumple.Text:= inttostr(dia)+' de '+mesletra;
end;

procedure Tfrmfechahora.time1Change(Sender: TObject);
var
hora:ttime;
hr,min,seg,ms:Word;
mesletra,dialetra:string;
begin

end;

procedure Tfrmfechahora.FormShow(Sender: TObject);
begin
date1.date:=date;
end;

end.

En edicumple aparece la fecha desglozada sin el año...
Como puedo comparar esta cadena con la fecha actual?, es decir si la fecha actual es igual a lo que esta en edicumple que me envie un mensaje por ejem:

if Date = edicumple.Text then
showmessage(' Fulanita o Sultanito cumple años hoy');

y que emita ese mensaje cada vez que se abra el programa

gracias y espero me puedan ayudar

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como puedo haer para que me avice el programa

Publicado por Virum (484 intervenciones) el 10/12/2004 18:50:18
Hola:

A ver si he entendido bien lo que estás haciendo.

Veo que tienes una variable "Fecha" (supongo que fecha de nacimiento) que es de donde sacas las cadenas edifecha.Text y edicumple.Text

- Puedes sacarlas directamente así:
edifecha.Text := FormatDateTime('dddd',Fecha)+', '+FormatDateTime('d "de "mmmm "de "yyyy',Fecha);
edicumple.Text := FormatDateTime('d "de "mmmm',Fecha)
Para formatear la hora: FormatDateTime('h:mm',Fecha);

- No necesitas comparar la cadena "edicumple", con la fecha actual. Puedes comparar la variable "Fecha" con la "Fechactual" que es lo mismo:

Si día de "Fecha" = día "Fechactual" y mes de "Fecha" = mes "Fechactual" entonces ..... loquesea

Utiliza las funciones DayOf, MonthOf . Están en la unidad DateUtils, o sea, que para que funcionen, debes añadir al uses DateUtils.

Suerte. Virum.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como puedo haer para que me avice el programa

Publicado por Alma (9 intervenciones) el 14/12/2004 17:43:09
Intente con lo que tu me escribiste pero no se porque me marca error al declarar la DateUtils en el Uses no se si sea porque uso el DELPHI5
Gracias Virum
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como puedo haer para que me avice el programa

Publicado por Virum (484 intervenciones) el 14/12/2004 23:52:53
Hola:

Es posible que sea D5 que yo desconozco, pues te estoy hablando de D7.

Otra opción es la que te apunta Jesús.

Suerte. Virum.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como puedo haer para que me avice el programa

Publicado por Jesús (26 intervenciones) el 14/12/2004 18:22:26
A ver si he entendido, creo que lo que debes hacer es comparar la fecha
en formato numeros 'ddmm' con la siguiente expresión:
formatfloat('00', strtoint(copy (date,1,2))+formatfloat('00',copy(date,4,2))
Espero que te sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar