Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Вниз

Drag n Drop для файлов из проводника с использованием OnDragOver   Найти похожие ветки 

 
Dr. Genius   (2006-10-16 11:19) [0]

Здравствуйте!

Нужен пример Drag"n"Drop"а (для файлов из проводника) с использованием OnDragOver, т.к. мне надо манипулировать с Boolean-переменной Accept.


 
DVM ©   (2006-10-16 18:42) [1]


> с использованием OnDragOver

Не выйдет. Через OLE Drag"n"Drop надо


 
Dr. Genius   (2006-10-17 11:37) [2]


> Через OLE Drag"n"Drop надо


Как?


 
Окся   (2006-10-17 14:43) [3]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, shellapi;

type
 TForm1 = class(TForm)
   Memo1: TMemo;
   procedure FormCreate(Sender: TObject);
 private
  procedure WMDropFiles(var Message: TMsg); message WM_DROPFILES;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
DragAcceptFiles(Handle,true);
end;

procedure TForm1.WMDropFiles;
var H,x,j:integer;
   s:array[0..255] of char;
   c:string;
BEGIN
h:=Message.message;
x:=DragQueryFile(h,$0FFFFFFFF,s,255);
DragQueryFile(h,0,s,255);
c:=string(s);
Memo1.Lines.Add(c);
for j:=1 to x-1 do
begin
DragQueryFile(h,j,s,255);
c:=string(s);
Memo1.Lines.Add(c);
end;
END;

end.


 
DVM ©   (2006-10-17 15:48) [4]


> Окся   (17.10.06 14:43) [3]

Не надо советовать то, в чем не очень разбираешься.
WM_DROPFILES приходит окну только когда файлы уже "бросили на окно". Узнать, что это за файлы до этого момента нельзя. Написано же:

> т.к. мне надо манипулировать с Boolean-переменной Accept.


> Dr. Genius   (17.10.06 11:37) [2]
>
> > Через OLE Drag"n"Drop надо
>
>
> Как?

Реализовать интерфейсы IDropTarget и т.д.

http://podgoretsky.com/ftp/Docs/Delphi/D3/D3ProgLib/index.htm

3, 4 главы. Правда там ошибки есть.



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

Форум: "Начинающим";
Текущий архив: 2006.11.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.055 c
4-1150724006
novill
2006-06-19 17:33
2006.11.05
Заняты ли "горячие клавиши"? Или получить список активных?


15-1160726370
RWolf
2006-10-13 11:59
2006.11.05
Разный размер приложения при компиляции на разных машинах


15-1160746232
MikePetrichenko
2006-10-13 17:30
2006.11.05
Задачка


15-1161095946
Игорь ЖАКО
2006-10-17 18:39
2006.11.05
Ehlib 3.6 требует запуска IDE


2-1161260781
vitaly27
2006-10-19 16:26
2006.11.05
Помогите пожалста больше немогу





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский