var tempname1,tempname2:string;
//我把string该为tcomponentname也是一样的错误
begin
 tempname1:=button1.Name;
 tempname2:=button2.Name;
 button2.Name:='d';
 button1.Name:=tempname2;
 button2.Name:=tempname1;
 showmessage(button1.Name);//这儿输出居然是button1
 showmessage(button2.Name);//这儿直接出错~
end;
 

解决方案 »

  1.   

    各位大哥啊~~~看看啊~
    我就是想交换两个button的name值,怎么搞啊~!
    我加分了啊 ~都40分了~我一共才400分~
      

  2.   

    控件的name 这个属性在运行期间好象是不能修改的属性呵
    呵呵。
    不知楼主怎么会想要干这样的事情哦。
    名字在运行期间改了。那它对应的事件怎么办啊?逻辑肯定会乱的啦。~~~~~~~~~~
      

  3.   

    运行的时候可以改name只是你这段代码太混乱
    var 
      tempname:string;
    begin
      tempname:=button1.Name; 
      button1.Name:= button2.Name;
      button2.Name :=tempname;
      showmessage(button1.Name);
      showmessage(button2.Name);
    end;
      

  4.   

    caption就可以改阿
    我知道了
    是运行期间程序认为有别的函数
    会用到这个变量多一不允许改变吧!!
    仅为个人想象!!!!!!!!!!!!
      

  5.   

    我现在还不知道,但是YAMABACK(CODE,CODE,CODE……) 的代码也是错的~