回 帖 发 新 帖 刷新版面

主题:[讨论]如何将动态生成的Edit->Text中的内容赋给一个数组。

我想通过用户的请求来动态生成一个数组。我已实现根据用户的请求动态生成相关的Edit 控件,且已起名为edt0 edt1 edt2 以次类推,现在我想把Edit->Text中内容赋给一个数组,因为是动态生成,我不会生成数组,请问有什么方法实现吗?总之是把它们里面的内容赋给一个数组,因为是动态生成,只能知道总的Edit控件的个数,也就是能知道所需数组的元素个数。我现在关键是不会表达Edit->Text。
我用如下的方法时会出错,
double *array=double[t];   //t 为总个Edit 控件的个数
for(i=0;i<t;i++)
   {
      String str;
      str="edt"+IntToStr(i);  // edt0 edt1 edt2
      array[i]=StrToFloat(str->Text);
   }
 出现了错误,我想主要原因是因为用了str的原因。

 请问个位有什么好的办法吗?

回复列表 (共3个回复)

沙发

用StrPCopy或StrCCopy函数可以将字符数组和字符串互相转换!

板凳

如果多次使用并改变数组,应删除数组指针并重新生成数组!

3 楼

str是字串,而不是控件名!你应该先通过控件名(str)得到控件对象,然后再取控件中的值才行
array[i]=((TEdit*)Form4->FindChildControl(str))->Text

我来回复

您尚未登录,请登录后再回复。点此登录或注册