Главная страница
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.47 MB
Время: 0.032 c
14-1120578423
NewWonder
2005-07-05 19:47
2005.08.07
Сделал курсовик и ...


3-1120226748
Ландграф Павел
2005-07-01 18:05
2005.08.07
обработка события BeforeAction в DBNavigator


1-1121827337
-=snoop=-
2005-07-20 06:42
2005.08.07
перебор объектов TCheckBox на форме


14-1121273671
Е-клмн
2005-07-13 20:54
2005.08.07
Я - идиот. Вы? (Да Нет)


14-1121674710
Juice
2005-07-18 12:18
2005.08.07
Рабочие столы и проводник