Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   mostrar resultados en form2 (https://www.clubdelphi.com/foros/showthread.php?t=47513)

arespremium 30-08-2007 08:13:54

mostrar resultados en form2
 
Hola como puedo hacer en delphi 7
ingresar datos en form1 los muestre en el form 2
tengo dos form, el form 1 y form 2

ejemplo: ingreso un palabra cualquiera en el edit al presionar aceptar desaparezca el form 1 y muestre el resultado en el form 2

Form1
ver_imagen

Form2
ver_imagen

Form 2
En el Boton "volver al formulario 1", que hago lo mismo que el boton del form1, que desaparesca form2 y cargue form1

Codigo para ComboBox
Código Delphi [-]
if ComboBox1.ItemIndex <> -0 then
combobox1.items.add('opcion 1');
combobox1.items.add('opcion 2');
combobox1.items.add('opcion 3');
form2/Label10.Caption := ComboBox1.Items[ComboBox1.ItemIndex];
end;

gluglu 30-08-2007 13:27:39

Lo que tienes que hacer es incluir en la cláusula 'Uses' del Form2 al Form1. Con ello ya podrás acceder a los elementos del Form1. Por ejemplo, en Form2 puedes leer el contenido del Edit1 del Form1 con LoqueSea := Form1.Edit1.Text;

Te aconsejaría que en vez de liberar de memoria cada uno de los Forms cuando accedas al otro, simplemente los coultes, por ejemplo con Form1.Visible := False;

jakuna 30-08-2007 20:07:26

un ejemplo
 
Hola arespremium, la respuesta a tu duda es lo que dice gluglu ya que para usar en el form1 todo lo que incluyas en el form2 debes declararlo en el uses un pequeño ejemplo para q lo puedes ver....

Código Delphi [-]
unit UForm1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,UForm2;
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Ed_Dato: TEdit;
    Btn_Aceptar: TButton;
    procedure Btn_AceptarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Btn_AceptarClick(Sender: TObject);
begin
 Form1.Visible:=False;
 Form2.Visible:=True;
 form2.ListBox1.Items.Add(Ed_Dato.Text);
end;
end.

Si observas en el Uses esta en Uform2 y alli tb se se hace lo q te recomienda gulglu oculta el form que no vas a usar

Código Delphi [-]
unit UForm2;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm2 = class(TForm)
    ListBox1: TListBox;
    Btn_Regresar: TButton;
    procedure Btn_RegresarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form2: TForm2;
implementation
uses UForm1;
{$R *.dfm}
procedure TForm2.Btn_RegresarClick(Sender: TObject);
begin
  Form2.Visible:=False;
  Form1.Visible:=True;
end;
end.

Aqui ya no se declara en el Uses la Uform1 porque sino te va a salir Circular Reference xq aperece en los dos cuando solo necesita estar en uno....es un ejemplo simple que hice altoke pero espero q te sirva para q entiendas, ya si deseas limpiar el listbox solo debes agregar Listbox1.Clear o lo que quieras usar por ejemplo un edit; y asi cada vez se borrara y mostrara un solo valor.

Suerte

arespremium 31-08-2007 00:09:34

Hola le agregue esto Form1, en uses:
UForm2:
pero me marca de color rojo, no me lo reconoce como debe de ser

error fatal
[Fatal error]Unit1.pas(7): file not found:'UForm2.dcu'

Código Delphi [-]
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,UForm2;

paldave 31-08-2007 03:50:10

Eso te debería funcionar si la unidad del Form2 se llama UForm2, pero si es la que crea por defecto Delphi entonces la unidad de Form2 se llama Unit2, y es eso lo que tienes que agregar en uses.
Código Delphi [-]
uses ..., unit2;

Caral 31-08-2007 04:02:03

Hola
Creo que a esto te refirias en tus consultas.
Te hice un ejemplo de esto, pasar datos de un form a otro, es muy sencillo, revisalo, lo vas a entender muy bien.
Recuerda que cuando se habla de uses, se tiene que definir si son de implementacion o del programa, hay diferencias, creo que es donde tienes los errores.
Pero bueno, me gusta hacer estos pequeños ejemplos, este lo hice casi igual al que necesitas, asi lo entenderas mejor.
Ya me diras.
Saludos

arespremium 31-08-2007 22:26:41

muchas gracias Caral, es muy buen ejemplo :)

es super wenu, genial

Saludos

Caray 01-09-2007 21:25:46

Como hacer para que un formulario pueda usar otro
 
Miren los que hago cuando quiero usar algo de otro formulario es ponerme en el que quiero que use los datos del otro, me voy a file->use unit y elijes la que quieras que use.
Bueno eso me funciona.


La franja horaria es GMT +2. Ahora son las 05:44:01.

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