zoukankan      html  css  js  c++  java
  • listbox

    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;
    View Code
  • 相关阅读:
    多线程编程(6) 从 CreateThread 说起[续四]
    多线程编程(7) 从 CreateThread 说起[续五]
    我最喜欢的邮件客户端软件IncrediMail Xe
    [公告]博客园建立了“专家区”
    [新功能]文章档案
    Lucene.Net的语言处理包中Lucene.Net.Analysis.Cn的Bug
    [好消息]博客园与博文视点、第二书店合作推出“读书心得区”
    推荐一篇有关GC的文章
    [小技巧]在NTFS分区中复制文件的同时如何复制权限
    ShartPoin无法创建门户网站的问题
  • 原文地址:https://www.cnblogs.com/blogpro/p/11453402.html
Copyright © 2011-2022 走看看