如何在delpi里设置全局变量呢?

解决方案 »

  1.   

    增加一个unit,在里面放置全局变量,然后在每个unit中引用该unit
      

  2.   

    unit Unit2;interface
    var
     strName :string; //定义全局变量
    implementation
    end.unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        Button2: TButton;
        Button3: TButton;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        procedure Button3Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementationuses Unit2; //uses{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
    showmessage(strName); //调用全局变量
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
    strName:='abc'; //调用全局变量end;procedure TForm1.Button3Click(Sender: TObject);
    begin
    strName:='ghgh'; //调用全局变量end;end.
      

  3.   

    在VAR中可以声明,也可以public中声明
      

  4.   

    to  maimaizhi(mutiny)
    var
      Form1: TForm1;
    这里的Form1算不算是全局变量?
      

  5.   

    "在VAR中可以声明,也可以public中声明"
      

  6.   

    var
      Form1: TForm
    ////////////你的变量在这里
    implemateion
      

  7.   

    to  maimaizhi(mutiny)
    var
      Form1: TForm1;
    这里的Form1算不算是全局变量?这个Form1是一个全局变量,只要引用了该单元的unit都可以自由使用该变量记住一点,delphi中没有绝对的全局变量,所有变量都依附于unit,如果你不引用相应的unit,你是不能使用其中的变量的。比如,你不引用 DataUtils单元,则所有的扩展日期函数都不能使用。