delphi listbox 使用

listbox删除

删除选中的某个:procedure TForm1.Button1Click(Sender: TObject); var i:integer;begin i:=0; while i<listbox1.Count do//删除掉前一个后,下一个会上移,所以用while if listbox1.selected[i] then listbox1.Items.delete(i) else i:=i+1;end; 删除listbox中所有的内容:procedure TForm1.Button2Click(Sender: TObject);var i:integer; begin for i:=0 to listbox1.Items.Count-1 do listbox1.Items.Clear; end;  
(1)添加记录:ListBox1.Add(EditBox1.Text);//添加到末尾  
(2)插入记录:ListBox1.insert(0,EditBox1.Text);//添加到开头  
(3)选中的记录号:Rc := ListBox1. CurIndex;//Rc:string;  
(4)计数:Rn:=ListBox1.count;//Rn:integer;
//  Form1.ListBox1.Items[1]:='123'; 改变 //  ShowMessage(listbox1.Items[listbox1.ItemIndex]);  显示当前数据   

按钮事件 向上移动
procedure TFormMain.RzBmpButton5Click(Sender: TObject);
var
  ActiveItem: Integer;
begin
  with lst2 do
  begin
    ActiveItem := ItemIndex;
    if (ItemIndex > 0) then
    begin
      Items.Move(ItemIndex, ItemIndex - 1);
      lst2.SetFocus;
      lst2.Selected[ActiveItem - 1] := True;
    end;
  end;
end;

向下移动
procedure TFormMain.RzBmpButton6Click(Sender: TObject);
var
  ActiveItem: Integer;
begin
  with lst2 do
  begin
    ActiveItem := ItemIndex;
    if (ItemIndex >= 0) and (ItemIndex < Items.Count - 1) then
    begin
      Items.Move(ItemIndex, ItemIndex + 1);
      lst2.SetFocus;
      lst2.Selected[ActiveItem + 1] := True;
    end;
  end;
end;

拖拽事件
procedure TFormMain.lst2MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  StartingPoint.X := X;
  StartingPoint.Y := Y;
end;

procedure TFormMain.lst2DragDrop(Sender, Source: TObject; X, Y: Integer);
var
  DropPosition, StartPosition: Integer;
  DropPoint: TPoint;
begin
  DropPoint.X := X;
  DropPoint.Y := Y;
  with Source as TRzListBox do
  begin
    StartPosition := ItemAtPos(StartingPoint, True);
    DropPosition := ItemAtPos(DropPoint, True);
    Items.Move(StartPosition, DropPosition);
  end;   
end;

procedure TFormMain.lst2DragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
begin
  Accept := Source = lst2;
end;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值