Главная страница
    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.45 MB
Время: 0.08 c
14-1121290192
Alex_Korn
2005-07-14 01:29
2005.08.07
Черт !!! Застыл на одном месте !


4-1117472658
duk_
2005-05-30 21:04
2005.08.07
температура скорость


14-1121271727
Piter
2005-07-13 20:22
2005.08.07
Шлюз fido7.ru


5-1092211388
segor
2004-08-11 12:03
2005.08.07
События свойства компонента


14-1121287090
Piter
2005-07-14 00:38
2005.08.07
Аналог CreateRemoteThread в *nix





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский