Ver Mensaje Individual
  #6  
Antiguo 01-10-2010
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 910
Reputación: 22
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Thumbs up

Primero lo de las negritas es para que veas donde debes incluir la unidad que contiene el formulario que deseas invocar.

Bueno sobre las variables, hay vamos:

Suponiendo que estoy en el formulario principal

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
  private
    { Private declarations }
     privNumero_Entero:Integer;
     privNumero_Real:Real;
     privTexto:String;
     privLogico:Boolean;

  public
    { Public declarations }
     pubNumero_Entero:Integer;
     pubNumero_Real:Real;
     pubTexto:String;
     pubLogico:Boolean;
  end;

var
  Form1: TForm1;

  globalesNumero_Entero:Integer;
  globalesNumero_Real:Real;
  globalesTexto:String;
  globalesLogico:Boolean;

implementation

{$R *.dfm}

procedure TForm1.OnCreate(Sender: TObject);
begin
     //inicializando las variables...
     pubNumero_Entero:=100;
     pubNumero_Real   :=100.20;
     pubTexto:String   :='Cadena de texto';
     pubLogico:Boolean:=true; //puede ser true/false;
end;

end.

Las puedes definir de este modo.
1) Privadas, las cuales solo seran visibles en la unidad donde son declaradas.
2) Publicas, es decir se pueden accesar a ellas pero indicando el formulario al cual pertenecen.
3) Globales, puedes hacer referencia a ellas sin hace referencia al formulario.

Veremos el punto 2 y 3.

Suponiendo que ya estoy en Form2 y deseo acceder a las variables publicas (2) del formulatio principal (form1), debo hacerlo asi:

1) Debo incluir la unidad Unit1 en la Unit2, como?, Asi...

Código Delphi [-]
Unit2
...

implementation
uses Unit1;

Para hacer referencia a la variables debo hacer esto:

Código Delphi [-]
procedure TForm2.Button1Click(Sender: TObject);
begin
       Showmessage( Format('Variable Publica del Form Principal %d',[form1.pubNumero_Entero]);//Aqui estoy haciendo referencia al formulario donde estan definidas las variables...
end;

procedure TForm2.Button2lick(Sender: TObject);
begin
       Showmessage( Format('Variable Global del Form Principal %d',[globalNumero_Entero]);//Aqui estoy haciendo a la variable global, como esta definida fuera de la definicion del form1, con solo incluir la unidad esta disponible.
end;

los prefijos pub, priv, global, no son necesarios es solo como ejemplo.

Chuuuuuuuu, me canse...

Bueno eso por ahora.

Saludos
Responder Con Cita