1.怎么定义一个窗体的全局变量?
2.怎么定义所有窗体均可以使用的全局变量?

解决方案 »

  1.   

    if abs(startx+i*gridSize-x)<r then begin         x1:=i;         break;       end;      for i:=0 to gridNum-1 do       if abs(starty+i*gridSize-y)<r then begin         y1:=i;         break;       end;
          if (y1<>-1) and (x1<>-1) then begin
      

  2.   

    一定有,在VB中定义一个全局变量,只需在所有过程的最上面定义 dim ss as integer之类的即可,那么在DELPHI中该怎么定义呢?如果是对于所有窗体均可使用的变量该在哪里定义
      

  3.   

    在interface下面定义的变量其它单元也可以引用
    在implementation下面定义的变量(不是指过程变量)只能在该单元内使用
      

  4.   

    1、对一个窗体:
    type
      TForm1 = class(TForm)
      private
        { Private declarations }
      public
        { Public declarations }  <----------------“本窗体”的全局变量这里声明
      end;var
      Form1: TForm1;
      a: Integer;    〈------------------------“本单元”的全局变量这里声明implementation2、对多个窗体都使用的全局变量
    可以建一个PUBLIC.PAS单元
    里面放公用的变量、函数
    然后要用到公用变量和函数的那些窗体都引用PUBLIC.PAS
    一般都这样做,好维护
      

  5.   

    同意楼上观点
    我也是这样做地
    在其他窗口的implementation下加入uses Public;就OK了。
      

  6.   

    type
      TForm1 = class(TForm)
      private
        { Private declarations }
      public
        { Public declarations }
         a:integer;//这个是窗体的全局变量;
      end;var
      Form1: TForm1;
       b:integer;//这个是程序级的全局变量;
    implementation{$R *.DFM}
    var
       c:integer;//这个是单元级的全局变量;end.
      

  7.   

    在Delphi中尽量不要用全局变量,要使用函数参数传递,否则很难维护
      

  8.   

    各位的说法不大一致。
    到底本单元的全局变量是var
      Form1: TForm1;
      a: Integer;    〈------------------------“本单元”的全局变量这里声明implementation还是implementation{$R *.DFM}
    var
       c:integer;//这个是单元级的全局变量;
    程序级全局变量又是怎么回事?