Programación General > C++ Builder
Pregunta
Devilcpc:
buenas de nuevo
mira, te cuento q no me funciona eso q me dijiste porque apenas pongo HoraEncendido-> me da el error:
[C++ Error] luces.cpp(134): E2288 Pointer to structure required on left side of -> or ->* :lightsabre:
si tenes alguna idea por favor contestame
Saludos
AURED:
Normal, eso te ocurrirá siempre que crees tu variable de la forma siguiente
TTime HoraEncendido;
Para poder acceder a ella con el -> tienes que crearla dinámicamente.
TTime* HoraEncendido
y luego en el evento que corresponda....
HoraEncedido=new TTime;
HoraEncendido->miembrox=.......
Si quieres declarar tu variable del modo original para acceder a los miembros de la clase usa el punto . en vez de la flecha ->
Devilcpc:
ok, gracias por la ayuda
de todos modos cuando uso el punto me aparecen muchas propiedades pero ninguna en la q me tome por separado la hora de los minutos y los segundos
como: HoraEncendido.minutos, hay alguna forma de hacerlo??
AURED:
Lo lamento, pero el error en tu código ha de estar en otro sitio, si que puedes comparar datos TTime entre si, pues el operador == está sobrecargado en esa clase.
He probado esto y funciona a la perfección:
--- Código: Text --- Hora1=Edit1->Text;Hora2=Edit2->Text;if(Hora1==Hora2)ShowMessage("Son iguales");elseShowMessage("No son iguales");
Busca en otro sitio, el error no está en comparar dos datos TTIME, se puede.
No sé pero quizá esté el error en el intervalo que pones al Timer, si por ejemplo va de 5 en 5 segundos y la hora actual pasa de 12/02/03 16:01:00 a 12/02/03 16:01:05 y coincide que la hora de encendido es 12/02/03 16:01:02 jamás se te cumplirán las condiciones.
Si quieres que el led de encendido esté prendiendo siempre que se haya superado la hora de encendido y el de apagado lo respectivo usa en vez de comparadores ==, <= o >= según corresponda.
AURED:
Estaba pensando...si comparas en cada ontimer y se nciende solo si la hora actual es IGUAL a la hora prefijada solo se encenderá durante un instante muy pequeño ¿no? en el siguiente ontimer ya no sé cumpliría...
No deberías plantertelo mjeor así?
si hora encendido<= hora actual<hora apagado)
"Hagase la luz y que se mantenga"
si no
"Apaga y vamonos y no enciendas la luz de nuevo"
Navegación
[*] Página Anterior
Ir a la versión completa