Главная страница
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.052 c
3-1120132669
Леонид
2005-06-30 15:57
2005.08.07
Как правильно сделать перемещение указателя в гриде если...


14-1121262043
Андрей Жук
2005-07-13 17:40
2005.08.07
Проект развивается :)


1-1121810389
Quattro
2005-07-20 01:59
2005.08.07
Будильник


3-1120381822
alsov
2005-07-03 13:10
2005.08.07
Проблема с WITH READ ONLY


14-1121671011
Priest
2005-07-18 11:16
2005.08.07
Используете ли вы в качестве обработчиков функции