procedure TForm1.SpeedButton1Click(Sender: TObject);
var
i:integer;
begin
for i := listbox1.Items.Count-1 downto 0 do
if listbox1.Selected[i] then
begin
listbox2.Items.Add(listbox1.items[i]);
listbox1.Items.delete(i);
end;
end;
var
i:integer;
begin
for i := listbox1.Items.Count-1 downto 0 do
if listbox1.Selected[i] then
begin
listbox2.Items.Add(listbox1.items[i]);
listbox1.Items.delete(i);
end;
end;
for i := listbox1.Items.Count-1 downto 0 do
if listbox1.Selected[i] then
begin
listbox2.Items.Add(listbox1.items[i]);
listbox1.Items.delete(i);
end;
这样最简单。
也可以:procedure TForm1.SpeedButton1Click(Sender: TObject);
var
i:integer;
begin
for i:=0 to listbox1.Items.Count-1 do
if listbox1.Selected[i] then
begin
listbox2.Items.Add(listbox1.items[0]);
listbox1.Items.delete(0);
end;
end;
procedure TForm1.SpeedButton1Click(Sender: TObject);
var i:integer;
begin
i:=ListBox1.ItemIndex;
if (i<0)or(i>ListBox1.Items.Count-1) then exit;
listbox2.Items.Add(i);
listbox1.Items.delete(i);
end;
上面一篇中listbox2.Items.Add(i);应该改为listbox2.Items.Add(listbox1.items[i]);
really sorry!