procedure TForm1.Button4Click(Sender: TObject);
var
   P : pstring;
   i, j : integer;
begin
   GetMem(p, sizeof(string) * 200);
   i := 1;
   j := 2;
   GetMem(p, sizeof(string) * 200);
   p^ := 'Edit' + inttostr(i) + '.Text + Edit' 
       + inttostr(j) + '.Text';
   freemem(p);
end;   Edit1.Text := 20 Edit1.Text := 30
怎样才能得到这两个的值.
为了方便.这里的 i 和 j 特指某个值.急啊.请大家帮忙.马上给分.小弟先谢了...

解决方案 »

  1.   

    Edit1.Text := 20 
    Edit2.Text := 30怎样得到 Edit1.Text + Edit2.Text 的值
      

  2.   

    var
      v: Integer;
    begin
      v := StrToInt(Edit1.Text) + StrToInt(Edit2.Text);
    end;
      

  3.   

    不是这个意思 .这样做我倒是会.不过先谢谢你了.我的意思是有 n 个edit 应怎样才能得到他们的值呢.var
       i : integer;
    begin
       i := 1;
       while i <= n do
       begin
          
       end;用指针读取怎样做才能得到他们的值呢
      

  4.   

    var
      i, v: Integer;
    begin
      v := 0;
      for i := 0 to ControlCount - 1 do
        if Controls[i] is TEdit then
          v := v + StrToInt(TEdit(Controls[i]).Text);
    end;
      

  5.   

    var
       I,iCount    : integer;
       AddEditText : string;
    begin
       AddEditText := ''; //此处用AddEditText这个字符串,把符合条件的Edit的Text累加起来
       for I := 1 to 5 do
           For iCount:=self.ComponentCount-1 downto 0 do
               if self.Components[iCount] is TEdit then
                  if UpperCase((self.Components[iCount] as TEdit).Name) = 'EDIT'+inttostr(I) then
                     AddEditText := AddEditText + (self.Components[iCount] as TEdit).Text;
       showmessage('符合条件的Edit的Text合并为:'+AddEditText);
    end;//阿发伯的代码并没有错,只是因为我已经写出来了,所以就回个贴吧。
    //楼主,那你这样,就只能把Edits的Name叫做EditXXX了....
      

  6.   

    我主要是用在数据库上.
     在一个字符串中有一个公式. str := 'FieldValues['TS1'] + FieldValues['TS2'] + FieldValues['TS3'] + (FieldValues['TS4'] + FieldValues['TS5']) * FieldValues['TS6']'怎样取得这个地址去得到他们的值.
      

  7.   

    楼主想要的估计是控件数组.不过DELPHI里这方面没有什么好的办法.俺一直是一个一个的加的,呵呵,IF EDIT1.TEXT<>'' THEN ...
    IF EDIT2.TEXT<>'' THEN ...对于控件数组,我知道的有两个方法,一个是用TAG属性,一个是继承TEDIT 不过俺在程序的调试是经常出错,所以只好一个一个的加啦呵呵,好怀念VB呀