Меню сайта
Мини-чат
Чтобы добавить сообщение, необходимо авторизоваться.
Главная » Статьи » Delphi » Описание процедур и т.п. на Delphi

ПЕРЕМЕЩАЕМ ЭЛЕМЕНТЫ СПИСКА LISTBOX С ПОМОЩЬЮ МЫШИ
Поместим на форму компонент TListBox. Добавим несколько элементов в список. После чего установим свойство DragMode компонента TListBox в dmAutomatic.
 
 
Объявим переменную StartingPoint:

var // form level
   StartingPoint : TPoint;

implementation

...
 
В обработчике событий OnDragDrop компонента TListBox запишем:
procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
 var
 DropPosition, StartPosition: Integer;
 DropPoint: TPoint;
  begin
 DropPoint.X := X;
 DropPoint.Y := Y;
 with Source as TListBox do
 begin
 StartPosition := ItemAtPos(StartingPoint,True) ;
 DropPosition := ItemAtPos(DropPoint,True) ;
 Items.Move(StartPosition, DropPosition) ;
  end;
  end;
 

В обработчике событий OnDragOver:

procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
 State: TDragState; var Accept: Boolean);
 begin
 Accept := Source = ListBox1;
 end;
 

В обработчике событий OnMouseDown:

procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
 begin
 StartingPoint.X := X;
 StartingPoint.Y := Y;
 end;
Категория: Описание процедур и т.п. на Delphi | Добавил: DelphiAiX (19.01.2012)
Просмотров: 1118 | Рейтинг: 5.0/1
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]