大家帮忙.谢谢!..(急急急急急)

大家帮忙.谢谢!..(急急急急急) Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiDB/html/delphi_20061218224617231.html
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   特指某个值.  
   
  急啊.请大家帮忙.马上给分.小弟先谢了...

我水平不行,没看懂,不知道楼主要干什么,请楼下高手看看!

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

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

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

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;

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了....

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

相信楼主只要把上面我们给出的代码读懂了,就会自行解决了  
  (楼主面对问题可能很苦恼,然而试图理解你的话的人同样苦恼)

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

办法还是很多的  
   
  理解深了,就能通用了~~  
   
  和大家努力学习吧~~冲~~~~~~~~

谢谢各位了......

结分...怎么给分没反应呢?

posted on 2009-02-19 16:45  delphi2007  阅读(108)  评论(0编辑  收藏  举报