Array
(
)

variavel global

Madwal
   - 16 set 2004

como posso criar uma variavel que independa de forms e esteja deiponivel para toda a aplicação ....

desde já obrigado


Martins
   - 16 set 2004

É só criar uma variável pública no Form Principal, acredito q os demais forms, conseguiram exergar...

Pode ser q existam outras formas...


Espero ter ajudado.

T[+]
8)


Madwal
   - 16 set 2004

ja criei no principal como publica e os outros forms não enxergam


Martins
   - 16 set 2004


Citação:
ja criei no principal como publica e os outros forms não enxergam

Ajudaria de vc fosse mais especifico no que deseja fazer, se postasse um exemplo do q queres posso tentar lhe ajudar.


Martins
   - 16 set 2004

Dá só uma olhada neste exemplo rápido.

Citação:

Tenho dois forms (form1 {unit1}e form2 {unit2}


Segue o código:
#Código


unit Unit1;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
teste:String;
end;

var
Form1: TForm1;

implementation
Uses Unit2;
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
teste:=´Olá mundo, estamos com Delphi todo o tempo!´;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:=teste;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.ShowModal;
end;

end.

Código acima do form1, com o componente Label, um Button, ao clicar no button o label recebe o valor da viriavel (teste).

Código do Form2.
#Código
unit Unit2;

interface

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

type
TForm2 = class(TForm)
Label1: TLabel;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form2: TForm2;

implementation
uses unit1;
{$R *.dfm}

procedure TForm2.FormShow(Sender: TObject);
begin
Label1.Caption:=form1.Teste;
end;

end.

Também com um Label, só q ao carregar, ele pega o valor da variavel (teste) do form1.

Não sei se ajuda, por isso espero q possa passar melhor a idéia do q desejas.


Martins
   - 16 set 2004

Uma outra sugestão, bem melhor do q a anterior é voce colocar o código como segue o exemplo abaixo:
#Código


private
{ Private declarations }
public
{ Public declarations }
end;

var {Todas as variaveis serão vistas pelos filhos deste form}
FormPai: TFormPai;
Id:Integer;
Nome, Cpf:String;

implementation

Uses Calculadora;

{$R *.DFM}


Aqui suas variáveis ficaram visiveis para todos os forms filhos.

PS: Não esqueça de colocar na clausa USES dos forms filhos a unit PAI.
Espero q seja útil.

Até a próxima....