我程序里的一段:
Var
ts: TListItem;
dataid:pdatanode;
tdc,tds1,tds2,tsc,tss1,tss2,pxsql:string;
movid,m:integer;begin
if rzlistview1.Selected<>nil then
begin
j:=rzlistview1.Items.Count;
if j<>0 then
begin
ts:=rzListView1.Selected;
rzListView1.SetFocus;
i:=ts.Index;
if i<j-1 then
begin
tsc:= rzlistview1.Items[i].Caption;
tss1:=rzlistview1.Items[i].SubItems[0];
tss2:=rzlistview1.Items[i].SubItems[1];
rzlistview1.Refresh;
rzListView1.Items[i+1].Selected:=true;
rzListView1.SetFocus;
tdc:=rzlistview1.Items[i+1].Caption;
tds1:=rzlistview1.Items[i+1].SubItems[0];
tds2:=rzlistview1.Items[i+1].SubItems[1];
rzlistview1.Items[i+1].Caption:=tsc;
rzlistview1.Items[i+1].SubItems[0]:=tss1;
rzlistview1.Items[i+1].SubItems[1]:=tds2;
rzlistview1.Items[i].Caption:=tdc;
rzlistview1.Items[i].SubItems[0]:=tds1;
rzlistview1.Items[i].SubItems[1]:=tss2;
end;
end;
dataid:=rztreeview1.Selected.Data;
movid:=integer(dataid.ID);
{ Datamodule3.ADOTable2.Filtered :=true;
Datamodule3.ADOTable2.Filter := 'sxparent='+inttostr(movid);
Datamodule3.ADOTable2.Sort:='sxsort';
datamodule3.ADOTable2.First;}
pxsql:='select * from zbtable where sxparent='+inttostr(movid);
With DataModule3.ADOQuery1 Do
Begin
Close;
SQl.Clear;
SQl.add(pxsql);
open;
End;
DataModule3.ADOQuery1.Sort:='sxsort';
for m:=0 to rzlistview1.Items.Count-1 do
begin
DataModule3.ADOQuery1.Locate('id',rzlistview1.Items[m].Caption,[lopartialkey]);
datamodule3.ADOQuery1.Edit;
datamodule3.ADOQuery1.FieldByName('sxsort').value:=strtoint(rzlistview1.Items[m].SubItems[1]);
datamodule3.ADOQuery1.Post;
end;
end;
end;
Var
ts: TListItem;
dataid:pdatanode;
tdc,tds1,tds2,tsc,tss1,tss2,pxsql:string;
movid,m:integer;begin
if rzlistview1.Selected<>nil then
begin
j:=rzlistview1.Items.Count;
if j<>0 then
begin
ts:=rzListView1.Selected;
rzListView1.SetFocus;
i:=ts.Index;
if i<j-1 then
begin
tsc:= rzlistview1.Items[i].Caption;
tss1:=rzlistview1.Items[i].SubItems[0];
tss2:=rzlistview1.Items[i].SubItems[1];
rzlistview1.Refresh;
rzListView1.Items[i+1].Selected:=true;
rzListView1.SetFocus;
tdc:=rzlistview1.Items[i+1].Caption;
tds1:=rzlistview1.Items[i+1].SubItems[0];
tds2:=rzlistview1.Items[i+1].SubItems[1];
rzlistview1.Items[i+1].Caption:=tsc;
rzlistview1.Items[i+1].SubItems[0]:=tss1;
rzlistview1.Items[i+1].SubItems[1]:=tds2;
rzlistview1.Items[i].Caption:=tdc;
rzlistview1.Items[i].SubItems[0]:=tds1;
rzlistview1.Items[i].SubItems[1]:=tss2;
end;
end;
dataid:=rztreeview1.Selected.Data;
movid:=integer(dataid.ID);
{ Datamodule3.ADOTable2.Filtered :=true;
Datamodule3.ADOTable2.Filter := 'sxparent='+inttostr(movid);
Datamodule3.ADOTable2.Sort:='sxsort';
datamodule3.ADOTable2.First;}
pxsql:='select * from zbtable where sxparent='+inttostr(movid);
With DataModule3.ADOQuery1 Do
Begin
Close;
SQl.Clear;
SQl.add(pxsql);
open;
End;
DataModule3.ADOQuery1.Sort:='sxsort';
for m:=0 to rzlistview1.Items.Count-1 do
begin
DataModule3.ADOQuery1.Locate('id',rzlistview1.Items[m].Caption,[lopartialkey]);
datamodule3.ADOQuery1.Edit;
datamodule3.ADOQuery1.FieldByName('sxsort').value:=strtoint(rzlistview1.Items[m].SubItems[1]);
datamodule3.ADOQuery1.Post;
end;
end;
end;
Ln: TListItem;
begin
Ln:= TListItem.Create(ListView1.Items);
Ln.Assign(ListView1.Items[0]);
ListView1.Items[0].Assign(ListView1.Items[1]);
ListView1.Items[1].Assign(Ln);
Ln.Free;
end;
Ln: TListItem;
begin
Ln:= TListItem.Create(ListView1.Items);
Ln.Assign(ListView1.Items[0]);
ListView1.Items[0].Assign(ListView1.Items[1]);
ListView1.Items[1].Assign(Ln);
Ln.Free;
end;