![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
ya puse solo close en lugar de form2.close y me funciono perfectamente para cerrar cada instancia creada de los formularios.
intente quitar la variable globlal var form2: Tform2; y ponerla como local, pero en una parte en que intento pasar el un valor al form2 estando en un formulario distinto llamado form3: form2.Edit1.Text:=Edit5.Text; //este codigo y el Edit5 estan en un boton del Form3 Me marca error, el cual creo que es porque ya no tiene la varible global que utilizaba form2, antes si me funcionaba pero pasaba el valor solo al ultimo form2 creado, Como puedo pasarle un valor desde el Form3 a la instancia que tenia activa del Form2 que no necesariamente es la ultima creada. Gracias por la ayuda que puedan darme. |
|
#2
|
||||
|
||||
|
Podes tener una variable global que se llame UltimoForm2Activo, por ejemplo, de tipo TForm2.
En el evento OnActivate del TForm2 pone:
Y en el form3 podes hacer algo como:
Aprovecho para darte otro consejo, y es que nunca acceses a las propiedades de los objetos contenidos en un formulario desde otro. Es mejor, de cara a las futuras modificaciones de la interfaz, crear propiedades en los formularios y hacer las asignaciones mediante estas. De esta forma el día de mañana podes dejar de usar TEdits y cambiarlo por (digamos) TComboBox o TdbEdits y tenes que reprogramar únicamente dentro del TForm2, siendo el cambio transparente para el resto de la aplicación. Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|