Secuencia de colores con Labels
Hola gente de la comunidad clubdelphi, tengo problemas con los label
Lo que estoy haciendo es una secuencia de colores: - En el form tengo 3 label con estos colores por defecto: Label1 // Color Verde Label2 // Color Amarillo Label3 // Color Amarillo - Lo que quiero es que al presionar la tecla flecha abajo (VK_DOWN) el color Verde del Label1 se pase al Label2 y el Label1 cambie al color a Amarillo. Label1 // Color Amarillo Label2 // Color Verde Label3 // Color Amarillo - Preciono nuevamente la misma tecla flecha abajo (VK_DOWN) por segunda ves, se pase el color Verde que esta en el Label2 al Label3 y el label2 se cambie a Amarillo. Label1 // Color Amarillo Label2 // Color Amarillo Label3 // Color Verde Lo que estoy haciendo es asi en un Timer con Intervalo 1 Código:
procedure TForm1.Timer1Timer(Sender: TObject); Label1 // Color Amarillo Label2 // Color Amarillo Label3 // Color Verde El problema es que no sigue la secuencia deseada Espero que me ayuden porfavor, gracias por adelantado :) |
No entiendo porque usas un Timer... ¿Es una exigencia de la prueba?
Yo haría la captura justo en el evento de presionar la tecla de flecha abajo en el formulario (onKeyDown) y le pasaría este código: Espero que te sirva Saludos |
Yo lo haría de forma ligeramente diferente, para que fuera mas sencillo agregar un label nuevo.
procedure TForm2.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin // Tecla abajo if (GetKeyState(VK_DOWN)<0) then begin // Si el ultimo laber no es verde muevo el color. if Label3.Font.Color <> clLime then begin Label3.font.color := Label2.font.color; Label2.font.color := Label1.font.color; Label1.font.color := clYellow; end end; end; |
Cita:
|
Cita:
Pero quisiera saber si se puede regresar el color en forma desendente al precionar el boton flecha arriba (VK_UP) Ejemplo los colores de los Labels quedan asi: Label1//Color Amarillo Label2 //Color Amarillo Label3 // Color Verde Presiono boton flecha arriba Label1//Color Amarillo Label2 //Color Verde Label3 // Color Amarillo Presiono otra ves flecha arriba Label1//Color Verde Label2 // Color Amarillo Label3 // Color Amarillo Y por cada cambio de color verde en el label, me salga un mensaje Ejemplo: Label2 Color verde, tecla arriba: Color Label1 verde Y regrese como estaba |
Hola.
Este ejemplo cambia la leyenda y color del Label actualmente seleccionado como pides: El comportamiento es cíclico, es decir que si estas en el Label inferior y continuas presionando la tecla Down regresa al superior y viceversa con la tecla Up. Muestra: Saludos :) |
Muchas Gracias, me sirvió :D
|
1 Archivos Adjunto(s)
Bueno gracias a todos, pero lo que quería era algo así, perdón por no especificar bien con lo que deseaba hacer, yo ya lo hise todo, pero quisiera que me ayuden a resumir el código por favor para que no quede tan largo.
Cambio de colores de los Labels con las Teclas Arriba,Abajo, Derecha y Izquierda. |
La franja horaria es GMT +2. Ahora son las 08:24:25. |
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