type
 TmyGarden= class 
 public procedure Garden;
 procedure sys;
end;
   TInformation =record
   uin,usernic:string[127];
   soilcount,rosemoney,charmlevel,expericelevel,experice:Integer;
   charmtotal,svrtime,charmneed:Integer;
   end;
.....................
procedure tmygarden.sys;
var
  MYINF:TInformation;
begin
  ShowMessage(MYINF.usernic);
end;procedure TForm1.Button1Click(Sender: TObject);
var
  MYINF:TInformation;
begin
  MYINF.usernic:='123';
end;
procedure TForm1.Button2Click(Sender: TObject);
var
  MYINF:TmyGarden;
begin
  MYINF:=TmyGarden.Create;
  MYINF.sys;
  MYINF.Free;
end;
MYINF.usernic       返回的值是乱验,或是空值;

解决方案 »

  1.   

    你想返回啥?“123”??  Button1 和 Button2 不搭嘎啊......
      

  2.   

    一种思路,设置成 全局变量 ~~~ 你试试吧~~ 你对象啥的乱78糟都没理解清楚啊...  end;var
      MYINF:TInformation;
    .....................procedure tmygarden.sys;
    //var
    //  MYINF:TInformation;
    begin
      ShowMessage(MYINF.usernic);
    end;procedure TForm1.Button1Click(Sender: TObject);
    //var
    //  MYINF:TInformation;
    begin
      MYINF.usernic:='123';
    end;
      

  3.   

    没有
    procedure tmygarden.sys;
    var
      MYINF:TInformation;
    begin
      MYINF.usernic:='123';
      ShowMessage(MYINF.usernic);
    end;这样就OK 但不是我要的
      

  4.   

    差不多理解你的意思~~~
    你 Button1 里面的 MYINF 又不是 你Button2 里面的 MYINF ,你以为名字一样就是同一个人啊...
      

  5.   

    procedure tmygarden.sys;
    var
      MYINF:TInformation;
    begin
      MYINF.usernic:='123';
      ShowMessage(MYINF.usernic);
    end;其实看这一段,我就应该想到要全局。但是这脑子就有不灵光的时候。实在感谢哥们指教!