Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Modificar componente de Formulario Padre

Buenas

Desde un formulario(Padre) creo otro (Hijo) de la forma:

Código:
 TFORM2 *FHIJO;

 FHIJO = new TFORM2(this);
 
 FHIJO->ShowModal();

delete FHIJO;
Es posible una vez con el foco en el formulario hijo, modificar un componente (TPanel,TLabel..) del form Padre..

Gracias
Responder Con Cita
  #2  
Antiguo 05-11-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola NEG1414.
Cita:
Empezado por NEG1414 Ver Mensaje
...
Es posible una vez con el foco en el formulario hijo, modificar un componente (TPanel,TLabel..) del form Padre..
Si no entiendo mal la situación, es posible si lo muestras de manera no modal, es decir:
Código:
  FHIJO->Show();

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 05-11-2014 a las 18:27:01.
Responder Con Cita
  #3  
Antiguo 05-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Gracias por contestarme..

Tu respuesta me ha planteado dos preguntas:

1) Que pierdo si muestro el Form de la forma FHIJO->Show();(Supongo que el Form Padre seguira "Activo" y se podran manipular sus componentes en tiempo de ejecucion)

2) Si decido no mostrarlo modal como modifico el componente del Form Padre.

Gracias.
Responder Con Cita
  #4  
Antiguo 05-11-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 12
aguml Va por buen camino
si en el unit de tform2 incluyes el .h de tform1 podras modificar cualquier componente por ejemplo Form1->Panel1->Caption= "Cambiado desde Form2";
Responder Con Cita
  #5  
Antiguo 05-11-2014
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola NEG1414.
Cita:
Empezado por NEG1414 Ver Mensaje
Gracias por contestarme..

Tu respuesta me ha planteado dos preguntas:

1) Que pierdo si muestro el Form de la forma FHIJO->Show();(Supongo que el Form Padre seguira "Activo" y se podran manipular sus componentes en tiempo de ejecucion)

2) Si decido no mostrarlo modal como modifico el componente del Form Padre.

Gracias.
Había interpretado que una vez abierto el form hijo deseabas modificarlo desde el padre y querías lo contrario...

Es tal cuál te explica aguml, posicionado en el form hijo: File => Include Unit Hdr... => elije el form padre. Luego podrás modificar las propiedades de los objetos del form padre como te indica.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 05-11-2014 a las 23:54:56.
Responder Con Cita
  #6  
Antiguo 06-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Gracias por contestar...

El caso es que al realizar el acceso de esa manera, al ejecutar la linea donde hago el cambio salta el error: `Acces Violation at adresss.....

mi codigo:

Código:
#include ¨FormPadre.h¨
...............
............

FFormPadre->Panel1->Visible = false;


Alguna idea.
Responder Con Cita
  #7  
Antiguo 06-11-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 12
aguml Va por buen camino
te falta algo al crear el panel. ¿Lo creas en ejecucion? Asegurate que la propiedad parent apunte al form padre.
Responder Con Cita
  #8  
Antiguo 06-11-2014
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.197
Poder: 20
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
¿No será que FFormPadre es un puntero con valor nulo?

Revisa ese punto.


Saludos.
Responder Con Cita
  #9  
Antiguo 06-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Gracias a los dos por contestar...

le voy a dar unas vueltas

Última edición por NEG1414 fecha: 06-11-2014 a las 19:06:34.
Responder Con Cita
  #10  
Antiguo 06-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Creo que he dado con el problema... El FormPadre es a su vez hijo Modal de otro Form (Abuelo ) y esto crea un conflicto ..el caso es que he hecho un sencillo programa con tres forms el "Abuelo" abre modalmente al "Hijo", este modifica un componente del "Abuelo" de la manera que me habeis indicado y perfecto...el resultado no es el mismo cuando a su vez abro el Form "Hijo" modalmente desde el form"padre" e intento modificar uno de sus componentes... me da el error comentado al inicio....

Hay alguna solucion para este problema "FAMILIAR"

gracias
Responder Con Cita
  #11  
Antiguo 07-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Creo que he dado con el problema... El FormPadre es a su vez hijo Modal de otro Form (Abuelo ) y esto crea un conflicto ..el caso es que he hecho un sencillo programa con tres forms el "Abuelo" abre modalmente al "Padre", este modifica un componente del "Abuelo" de la manera que me habeis indicado y perfecto...el resultado no es el mismo cuando a su vez abro el Form "Hijo" modalmente desde el form"padre" e intento modificar uno de sus componentes... me da el error comentado al inicio....

Hay alguna solucion para este problema "FAMILIAR"

gracias

Nota:Perdonar que repita el post.. me he echo un lio con editar y citar

Última edición por NEG1414 fecha: 07-11-2014 a las 07:34:24.
Responder Con Cita
  #12  
Antiguo 07-11-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 12
aguml Va por buen camino
yo ya me perdi en el arbol genealogico XD Se me ocurre que prueves algo. Si el padre es modal y el hijo es modal, cuando muestres al hijo oculta al padre antes, y muestralo despues. O sea, tu haras en un boton FormHijo->ShowModal(); pues antes de esa linea pon Hide(); y luego en el hijo haces por ejemplo FormPadre->Panel1->Width = 100; pues pon despues FormPadre->ShowModal() o FormPadre->Show(). Igual es problema de que haya dos modal a la vez asi que yo probaria a quitar el modal antes de mostrar la nueva modal y luego de cerrar la hija devolver a modal al padre.

Última edición por aguml fecha: 07-11-2014 a las 11:02:43.
Responder Con Cita
  #13  
Antiguo 07-11-2014
NEG1414 NEG1414 is offline
Miembro
 
Registrado: mar 2007
Posts: 177
Poder: 18
NEG1414 Va por buen camino
Gracia por contestarme...

Si no encuentro solucion probare a abrir el hijo de la forma NO MODAL: FHIJO->Show() y haber que pasa..
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Modificar formulario padre (FastScript) Toni Varios 1 06-11-2013 14:23:52
Formulario padre ASUNCION Varios 2 14-02-2013 19:56:00
Formulario padre e hijo Gbyte Varios 19 23-07-2008 20:56:04
Cambiar propiedad de componente del formulario padre al cerrar el formulario hijo jzginez OOP 5 22-06-2007 21:40:51
Acceso a componente de formulario padre???? mguixot OOP 6 11-06-2003 13:54:19


La franja horaria es GMT +2. Ahora son las 16:25:47.


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
Copyright 1996-2007 Club Delphi