Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Contar cambios de color en paneles (https://www.clubdelphi.com/foros/showthread.php?t=30738)

edusus 17-04-2006 12:35:57

Contar cambios de color en paneles
 
Hola amigos, lo que quiero lograr es lo siguiente.
Cada vez que cambie el color de un panel disminuya en 1 la cantidad indicada en un Edit. ¿Cómo puedo hacerlo?
Gracias por la ayuda.

alapaco 17-04-2006 15:18:44

Como haces para cambiarle la propiedad a un TPanel ??

Tal vez hagas: miPanel.Color := clRed;
Si es así en la línea siguiente podes hacer lo que queres, quedaría así:


miPanel.Color := clRed;
miEdit.Text := IntToStr(StrToIntDef(miEdit.Text, -1) - 1);

edusus 18-04-2006 09:42:58

no me has entendido pero gracias de todos modos.
 
Mira lo que hice es un pequeño jueguito para mi hija donde un gif animado va recorriendo la pantalla (lo mueve con las teclas up, down, left, right) y cuando toca unos paneles alargados que simulan barreras estos cambian de color (esto lo sé hacer) pero para agregarle emoción al juego :) , puse un edit con el texto '10' (puntos) y pretendo que le vaya restando un punto cuando cambia de color un panel. El código lo he puesto en un timer pero en este caso una vez que toca un panel comienza a restar de uno en uno indefinidamente.
¿En qué evento de que componente tendría que poner el código?

Lepe 18-04-2006 11:39:46

Según entiendo, no es cuando cambia de color, sino cuando se produce una colisión del gif con un panel. ¿Como controlas las colisiones? quizás ahí sea el mejor momento para decrementar el Tedit.

Si lo tienes todo en un timer, tendrás que ponerle condiciones:

si gif.top + gif.height >= panelX.top then decrementa(edit1)

En este caso estamos comprobando si el gif ha bajado verticalmente y ha tocado sobre un panel que tiene debajo.

Sería bueno saber como creas los paneles y como estan distribuidos los paneles, si es una carretera, un laberinto, etc.

Saludos


La franja horaria es GMT +2. Ahora son las 11:52:56.

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