Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.07;
Скачать: CL | DM;

Вниз

Как использовать технологию DragDrop?   Найти похожие ветки 

 
Shopot ©   (2005-07-19 08:53) [0]

Как использовать технологию DragDrop? Если есть хорошая дока,
киньте ссылку, плз.


 
Big Joe ©   (2005-07-19 09:02) [1]

В каких целях ?


 
Fynjy1984 ©   (2005-07-19 09:07) [2]

http://www.delphimaster.ru/articles/dragndrop/index.html


 
Fynjy1984 ©   (2005-07-19 09:07) [3]

http://www.delphimaster.ru/articles/dragndrop/index.html


 
Big Joe ©   (2005-07-19 09:10) [4]

Drag and Drop для TListBox на примере двойного списка
------------------------------------------------------

procedure TfrDualList.ListDragOver(Sender, Source: TObject; X,
 Y: Integer; State: TDragState; var Accept: Boolean);
var
 DragIndex: integer;
begin
 // из другого листбокса принимаем всегда
 if Source <> Sender then
   Accept := true
     // а если это мы сами - надо проверить возможность изменения порядка
   // в списке и позицию сбрасывания
 else
   with (Sender as TListBox) do
   begin
     Accept := False;
     if not Sorted and ((SelCount = 1) or (not MultiSelect)) then
     begin
       DragIndex := ItemAtPos(Point(X, Y), True);
       if (DragIndex >= 0) and (DragIndex <> ItemIndex) then
         Accept := True; // попали внутрь видимого списка
     end;
   end;
 // установка изображения курсора
 if State = dsDragLeave then
   (Source as TListBox).DragCursor := crDrag;
 if (State = dsDragEnter) and ((Source as TListBox).SelCount > 1) then
   (Source as TListBox).DragCursor := crMultiDrag;
end;

procedure TfrDualList.ListDragDrop(Sender, Source: TObject; X, Y: Integer);
begin
 if Source <> Sender then // перемещаем элементы из другого листбокса
   MoveItems(TListBox(Source), TListBox(Sender))
 else
   BoxMoveSel(TListBox(Sender), // перемещаем элемент внутри списка
     TListBox(Sender).ItemAtPos(Point(X, Y), True));
end;


 
Shopot ©   (2005-07-19 09:26) [5]

Хорошо. А просто описание методов DragDrop формы и визуальных компонентов не скажите где найти?



Страницы: 1 вся ветка

Текущий архив: 2005.08.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.024 c
1-1121761457
Bird
2005-07-19 12:24
2005.08.07
Добавление элементов на форму в Run-Time


1-1121782410
Sam Stone
2005-07-19 18:13
2005.08.07
Кодировка текстового файла


6-1114085582
Gek1
2005-04-21 16:13
2005.08.07
Проблема с TClientSocket


14-1121360156
Sanya_BS
2005-07-14 20:55
2005.08.07
Неохото заправлять картриджи самому. Нужны причины для отказа.


14-1121727655
kaif
2005-07-19 03:00
2005.08.07
А у нас есть такая организация? В США - есть.