![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() 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); begin if (GetKeyState(VK_DOWN)<0) then begin if Label1.Font.Color = clLime then begin Label1.font.color := clYellow; Label2.font.color := clLime; end; end; begin if (GetKeyState(VK_DOWN)<0) then begin if Label2.font.Color = clLime then begin Label2.font.color := clYellow; Label3.font.color := clLime; end; end; end; end; end. 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 ![]() Última edición por Milworm99 fecha: 17-11-2017 a las 04:27:48. |
#2
|
||||
|
||||
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 |
#3
|
||||
|
||||
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; |
#4
|
||||
|
||||
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
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 Última edición por Milworm99 fecha: 17-11-2017 a las 15:38:36. |
#6
|
||||
|
||||
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 ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#7
|
|||
|
|||
Muchas Gracias, me sirvió
![]() Última edición por Casimiro Notevi fecha: 17-11-2017 a las 21:24:27. |
#8
|
|||
|
|||
![]() 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. ![]() Última edición por Milworm99 fecha: 18-11-2017 a las 01:04:11. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Modificar Labels | emme_juegos | OOP | 1 | 13-12-2010 00:02:28 |
Restar dos labels | stynpy29 | Varios | 2 | 01-06-2010 16:44:00 |
labels y campos | josi | Varios | 1 | 15-05-2008 11:44:51 |
Transparencia en labels .NET | edalmasso | .NET | 0 | 11-04-2006 21:18:16 |
Labels Verticales | KAISSER | Impresión | 3 | 11-06-2003 10:07:02 |
![]() |
|