FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Ayuda 'Cambiar colores'
Hola a tod@s!
Tengo el siguiente problema. Tengo un formulario principal que abre otro formulario modal llamado fEditor de la siguiente manera:
- El problema es el siguiente: Quiero recorrer los controles del segundo formulario modal, lo que hago es recorrer todos los controles del formulario modal 'fEditor' y si el control es de tipo tdbedit que es lo que quiero yo, si el campo está vacío quiero que aparezca en diferente color. La función es la siguiente:
-No me da ningún error pero no lo realiza. Porque puede ser? Un saludo y gracias de antemano. Xaito! Última edición por dec fecha: 08-04-2009 a las 09:06:23. Razón: Poner la etiqueta DELPHI |
#2
|
||||
|
||||
¿Has probado con las propiedades Components[i] y ComponentCount en lugar de Controls[i] y ControlCount?
A primera vista me parece que el código es correcto.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Hola,
El problema está en que primero ejecutas el "ShowModal()", pero, ahí se para el proceso, por decirlo así, de modo que la siguiente instrucción no se ejecuta hasta que el formulario "modal" se ha cerrado. Creo que podrías aprovechar el evento "OnShow" del propio formulario que vas a mostrar "modalmente" para hacer lo que dices. Eso o algo parecido, pero, desde luego, tal como lo estás haciendo no puede funcionar, pues, una vez que se ejecuta el "ShowModal()", el proceso se interrumpe hasta que el formulario no deje de tener ese estado (modal). |
#4
|
|||
|
|||
He probado con Components y nada de na!
Tambien había pensado en que ShowModal podría ser el problema, pero también lo probé en lanzar antes la función y sigue sin funcionar, incluso escribiendo la función en el mismo formulario 2 'fEditor';. Lo raro es que no da ninguna excepción ni error. Otra cosilla que os quería comentar es que: Porque en un formulario cuando me refiero a un componente no me realizar la acción si le pongo el nombre del form antes? ejemplo: Form1.Label1.Caption:='Mi Texto'; //De esta manera no me da ningun error pero no funciona. Label1.Caption:='Mi Texto'; //De esta manera es correcto. Si alguien se le ocurre algo? Gracias a todos! Última edición por Cristalero fecha: 08-04-2009 a las 09:50:57. |
#5
|
||||
|
||||
David tiene razón, no me había dado cuenta del ShowModal.
El problema del código inicial es que la llamada a editEstado1 se ejecutará cuando ya hayas cerrado el form. Yo pondría ese código en el cerrar del form, para que se ejecute antes de cerrarlo. Creo que más sencillo con un ejemplo; Aquí te adjunto un ejemplo sencillo que es lo que yo haría si he entendido bien lo que quieres.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
|||
|
|||
Gracias Neftali por el ejemplo. Le paso a mi procedimiento el Form y listo. Aún así hay cosas que no veo muy lógicas, en fin.
Gracias por tu aporte! Un saludo a tod@s! |
#7
|
||||
|
||||
No te quedes con la duda. ¿Qué es lo que no ves lógico?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#8
|
|||
|
|||
Respecto al tema de antes tengo una pequeña duda y no se por donde seguir.
He decicido cambiar el diseño , por lo tanto los TDBEdit ya no estan en el form secundario sino que los he agrupado en TGroupBox. Como puedo acceder a ellos? Lo que hago es lo mismo de antes, lo único que antes le indico si es TGroupBox y luego dentro de el quiero referirme a sus componentes pero no se como. Un saludo a tod@s! |
#9
|
||||
|
||||
Cita:
Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar. |
#10
|
||||
|
||||
Si sólo quieres acceder o comprobar los que están dentro de un GroupBox, puedes comprobar la propiedad Parent de los Edits.
Te paso un segundo ejemplo, similar al de antes, pero sólo tiene en cuenta o revisa que no estén vacíos los componentes del groupBox, el de fuera no lo tiene en cuenta. NOTA: Además en el de antes, quedaba una referencia a Controls que no había cambiado por Components
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Tip: Como cambiar los colores del IDE | mamcx | Varios | 8 | 09-02-2009 23:42:31 |
Cambiar colores en runtime | Minio | Gráficos | 1 | 15-04-2008 23:00:03 |
como cambiar los colores de las letras | julyus | Varios | 2 | 01-02-2008 22:20:39 |
Cambiar colores aleatoriamente | donchuma | OOP | 3 | 21-10-2007 14:53:31 |
Cambiar colores a la imagen | maravert | Gráficos | 3 | 07-03-2005 09:57:44 |
|