Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ¿Cómo exportar datos de una ventana a otra? (https://www.clubdelphi.com/foros/showthread.php?t=72157)

Parabol77 31-01-2011 18:52:50

¿Cómo exportar datos de una ventana a otra?
 
Muy buenas a todos. El problema que tengo es el siguiente:

Tengo una ventana (principal), donde calculo algunos datos. A continuación, aparece una ventana nueva, donde aparecen esos datos para seleccionarlos. Se selecciona uno, y tras algunas operaciones, se acepta pulsando un botón, haciendo que se cierre la ventana. De nuevo se exportan los datos de la ventana abierta a la principal.

¿Cómo puedo hacer para realizar esto? Tengo las dos fichas creadas, siendo una ficha madre y otra hija, pero no sé cómo abrir la hija exportando los datos de la ficha principal a la hija.

Muchas gracias de antemano.
Un saludo.

Caral 31-01-2011 18:58:09

Hola
Tienen que estar ligadas en el uses.
Despues de implementacion coloca:
Uses
Unit2 //en el caso del unit1 (form1)

y

Uses
Unit1; // en el caso del form2.

Esto liga los form y podras traer o exportar datos entre ellos.
Saludos

roman 31-01-2011 18:59:02

Lo usual para comunicar datos entre dos objetos (en este caso, dos ventanas) es el uso de métodos y/o propiedades. Dado que aquí quieres tanto enviar como recibir, pienso que te conviene usar propiedades.

Cada dato que quieras compartir lo pones como propiedad de la ventana hija.

La ventana madre, al momento de crear la hija y antes de mostrarla (modalmente), llena dichas propiedades con su propia información.

La ventana hija, por su parte, antes de cerrarse, vuelve a llenar su propiedades con los cambios pertinentes en los datos.

Finalmente, cuando la llamada a ShowModal termina, la ventana madre lee las propiedades de la hija, antes de destruirla, en caso de que así se haga.

// Saludos

Parabol77 31-01-2011 20:23:36

Muchísimas gracias a ambos por la respuesta.

Entonces, si yo tengo mi ventana principal (TForm1) y la ventana no principal (TForm2), ¿tengo que hacer lo siguiente?

Supongamos que quiero pasar las variables D1 y D2, de la ficha principal, a la otra ficha (supongamos, variables N1 y N2).

En Unit1 (TForm1)
Código:

(...)
implementation
Uses Unit2;

(...)
TForm2.N1:=D1;
TForm2.N2:=D2;

En Unit2 (TForm2)

Código:

(...)

implementation
Uses Unit1;

(...)

X:=N1+N2;

Suponiendo que con N1 y N2 quiero hacer una suma. ¿Sería eso correcto?

Muchas gracias.
Un saludo.

Caral 31-01-2011 21:00:04

Hola
Este es un ejemplo sencillo.
Saludos

Parabol77 02-02-2011 09:43:09

Cita:

Empezado por Caral (Mensaje 389461)
Hola
Este es un ejemplo sencillo.
Saludos

¡Muchas gracias por el ejemplo!

Creo que ya lo he comprendido. Me pondré manos a la obra.

Un saludo.


La franja horaria es GMT +2. Ahora son las 06:13:59.

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