读书人

怎么对动态生成控件的值进行计算

发布时间: 2012-03-07 09:13:51 作者: rapoo

如何对动态生成控件的值进行计算
用如下方法动态生成了一组控件
EditArry[i]:=Tedit.Create(ChengGoFaBu_F);
EditArry[i].Text:=Inttostr(i);
EditArry[i].Left:=Trunc((i mod 10)*70)+30;
EditArry[i].Top:=Trunc(i/10)*60+50;
EditArry[i].Width:=60;
EditArry[i].Height:=20;
EditArry[i].Parent:=panel2;
EditArry[i].Visible:=True;
EditArry[i].Name:='EDT'+inttostr(i); //控件名

现在每个控件中都输入了一些数据,请问我如何才能在这些控件中找到值最大和最小的数。
并去掉最大的数和最小的数(如果最大的数和最小的数有重复,就各去掉一个),然后
将其它相加求和的值赋给另一个文本框。

高手请帮忙,谢谢!

[解决办法]
求和...

你在循环里加句"C := C + StrToInt(EditArry[I].Text))", 循环完了C := C - A - B不就完了么..
[解决办法]
uses Math;


var
I: Integer;
A, B, C: Integer;
Total: Integer;
begin
A := StrToInt(EditArry[Low(EditArry)].Text);
B := A;
Total := 0;
for I := Low(EditArry) to High(EditArry) do
begin
C := StrToInt(EditArry[I].Text);
A := Min(A, C);
B := Max(B, C);
Inc(Total, C);
end;
Dec(Total, A + B);
end;

读书人网 >.NET

热点推荐