listbox1.Items.Assign(listbox2.Items);
listbox2的选项会分配到listBox1中.
listbox2.clear;
就可以清除listbox2的选项.

解决方案 »

  1.   

    listbox1往listbox2增加选种的,同时删除listbox1中选种的。
    procedure TForm1.ListBox1DblClick(Sender: TObject);
    var j,ii:integer;
    begin
          Listbox1.DeleteSelected;
          j:=ListBox1.Count-1;
          for ii:=0 to j do
          begin
            if ListBox1.Selected[ii] then
            begin
              listbox2.Items.Add (listbox1.items[ii]);
              ListBox1.ItemIndex:=ii;
              listbox1.DeleteSelected;
            end;
          end;end;
      

  2.   

    ***********************listbox1往listbox2增加,
    procedure TForm1.ListBox1DblClick(Sender: TObject);
    var i,j:integer;
    begin     
       for i:=0 to listbox1.count-1 do
           begin
             if ListBox1.Selected[i] then
             begin
                for j:=0 to listbox2.count-1 do
                   if listbox.items[i]=listbox2[i] then 
                      //listbox2已存该items
                      break;
               if j=listbox2.count+1 then  //没有重复的
                  listbox2.Items.Add (listbox1.items[i]);
            end;
          end;
    end;
      

  3.   

    没有这么复杂吗!可以参考:
    listbox1.itmes:=listbox2.itmes;
    即把listbox2的所有内容传递给listbox1
      

  4.   

    Delphi 自己带的例子。
    unit Unit2;interfaceuses 
      Windows, Messages, SysUtils, Classes, Graphics, Forms, Dialogs, Controls, StdCtrls, 
      Buttons;type
      TDualListDlg = class(TForm)
        OKBtn: TButton;
        CancelBtn: TButton;
        HelpBtn: TButton;
        SrcList: TListBox;
        DstList: TListBox;
        SrcLabel: TLabel;
        DstLabel: TLabel;
        IncludeBtn: TSpeedButton;
        IncAllBtn: TSpeedButton;
        ExcludeBtn: TSpeedButton;
        ExAllBtn: TSpeedButton;
        procedure IncludeBtnClick(Sender: TObject);
        procedure ExcludeBtnClick(Sender: TObject);
        procedure IncAllBtnClick(Sender: TObject);
        procedure ExcAllBtnClick(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        procedure MoveSelected(List: TCustomListBox; Items: TStrings);
        procedure SetItem(List: TListBox; Index: Integer);
        function GetFirstSelection(List: TCustomListBox): Integer;
        procedure SetButtons;
      end;var
      DualListDlg: TDualListDlg;implementation{$R *.dfm}procedure TDualListDlg.IncludeBtnClick(Sender: TObject);
    var
      Index: Integer;
    begin
      Index := GetFirstSelection(SrcList);
      MoveSelected(SrcList, DstList.Items);
      SetItem(SrcList, Index);
    end;procedure TDualListDlg.ExcludeBtnClick(Sender: TObject);
    var
      Index: Integer;
    begin
      Index := GetFirstSelection(DstList);
      MoveSelected(DstList, SrcList.Items);
      SetItem(DstList, Index);
    end;procedure TDualListDlg.IncAllBtnClick(Sender: TObject);
    var
      I: Integer;
    begin
      for I := 0 to SrcList.Items.Count - 1 do
        DstList.Items.AddObject(SrcList.Items[I], 
          SrcList.Items.Objects[I]);
      SrcList.Items.Clear;
      SetItem(SrcList, 0);
    end;procedure TDualListDlg.ExcAllBtnClick(Sender: TObject);
    var
      I: Integer;
    begin
      for I := 0 to DstList.Items.Count - 1 do
        SrcList.Items.AddObject(DstList.Items[I], DstList.Items.Objects[I]);
      DstList.Items.Clear;
      SetItem(DstList, 0);
    end;procedure TDualListDlg.MoveSelected(List: TCustomListBox; Items: TStrings);
    var
      I: Integer;
    begin
      for I := List.Items.Count - 1 downto 0 do
        if List.Selected[I] then
        begin
          Items.AddObject(List.Items[I], List.Items.Objects[I]);
          List.Items.Delete(I);
        end;
    end;procedure TDualListDlg.SetButtons;
    var
      SrcEmpty, DstEmpty: Boolean;
    begin
      SrcEmpty := SrcList.Items.Count = 0;
      DstEmpty := DstList.Items.Count = 0;
      IncludeBtn.Enabled := not SrcEmpty;
      IncAllBtn.Enabled := not SrcEmpty;
      ExcludeBtn.Enabled := not DstEmpty;
      ExAllBtn.Enabled := not DstEmpty;
    end;function TDualListDlg.GetFirstSelection(List: TCustomListBox): Integer;
    begin
      for Result := 0 to List.Items.Count - 1 do
        if List.Selected[Result] then Exit;
      Result := LB_ERR;
    end;procedure TDualListDlg.SetItem(List: TListBox; Index: Integer);
    var
      MaxIndex: Integer;
    begin
      with List do
      begin
        SetFocus;
        MaxIndex := List.Items.Count - 1;
        if Index = LB_ERR then Index := 0
        else if Index > MaxIndex then Index := MaxIndex;
        Selected[Index] := True;
      end;
      SetButtons;
    end;end.
      

  5.   

    listbox2.Items.append(listbox1.Items[listbox1.itemIndex]);