ArrField[i]为
0001
0002
0003
For a:=1 to 3 do 想得到如下数组
00011
00021
00031
00012
00022
00032
00013
00023
00033
数组该怎么写呀
解决方案 »
- 关于TForm透明属性的效率问题
- 比较难的问题:多文档窗体中子窗体切换时如何消除闪烁现象?
- 到底如何正确获得CPU主频...
- 新手,纯属简单问题,请回答!
- 关于fastreport2.4版,问题,急呀,解决有高分相送
- 在delphi中有类似于VB的vsflex的组件吗?
- 好东西大家共享,!!<<十面埋伏>>BT下载地址
- ADOStoredProc的问题
- 关于COM+出错问题(连接事务管理器或没有事务管理器)
- WebBrowser的Navigate(const URL: WideString; var Flags: OleVariant)中的FLAGS如何写?
- 如何实现DBgrid 记录随鼠标滚轮
- SQLSERVER客户端口用户登陆问题!
TArrField: array[1..3] of string;
var
arrList array[1..3] of TArrField;不知道是不是这个意思?
var
i,j: byte;
begin
ListBox1.Items..Clear;
for i:=1 to 3 do
for j:=1 to 3 do
ListBox1.Items.Add(ArrField[i]+IntToStr(j));
end;
var
FieldName: string;
a,i: Integer;
begin
For a:=1 to StrToInt(Edit2.Text) do
begin
FieldName := DBgrid.Columns.Items[0].FieldName;
SetLength(ArrField, ADODataSet1.RecordCount);
ADODataSet1.First;
ADODataSet1.DisableControls;
for i := 0 to ADODataSet1.RecordCount - 1 do
begin
ArrField[i] := ADODataSet1.FieldByName(FieldName).AsString+IntToStr(a);
ADODataSet1.Next;
end;
ADODataSet1.EnableControls;
end;
end;
想对dbgrid显示的内容再进行分组,分组数为a
解释如下
FieldName := DBgrid.Columns.Items[0].FieldName; (取得dbgrid第一列显示的内容)假如dbgrid显示的内容为
0001
0002
0003
而且a为3时
想得到的数组为
00011
00021
00031
00012
00022
00032
00013
00023
00033
但目前ArrField[i]得到的为
00013
00023
00033
错在哪呀
var
ArrField,ArrField2:array of string;
i,j,v,l:integer;
begin SetLength (ArrField,4);
for i:=1 to High(ArrField) do
ArrField[i]:='000'+inttostr(i); j:=3;
SetLength (ArrField2,j*High(ArrField)+1);
l:=1;
for v :=1 to 3 do
for i :=1 to High(ArrField) do begin
ArrField2[l]:=ArrField[i]+inttostr(v);
inc(l);
end; for i:=1 to High(ArrField2) do
ListBox1.Items.Add(ArrField2[i]); SetLength (ArrField,0);
SetLength (ArrField2,0);end;
procedure TFrmOrderBy.BtnOrderClick(Sender: TObject);
var
FieldName: string;
a,i: Integer;
begin SetLength(ArrField,StrToInt(Edit2.Text)*ADODataSet1.RecordCount+1);
i:=1; ADODataSet1.DisableControls; For a:=1 to StrToInt(Edit2.Text) do begin
FieldName := DBgrid.Columns.Items[0].FieldName;
ADODataSet1.First;
while not ADODataSet1.eof do begin
ArrField[i] := ADODataSet1.FieldByName(FieldName).AsString+IntToStr(a);
ADODataSet1.Next;
inc(i);
end;
end; ADODataSet1.EnableControls;end;