随笔 - 809  文章 - 0 评论 - 144 阅读 - 770万

 

复制代码
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;
复制代码
posted on   del88  阅读(24)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示