перетаскивание файла

 
0
 
Delphi, Kylix & Pascal
ava
Михалыч | 23.03.2013, 12:21
Подскажите как сделать drag and drop файла?
Нашел вот это:
Работает хорошо, но нужно сделать что бы принимала не вся форма, а только Panel .
И не все файл ,а только с расширением .exe
   

  protected
    procedure WMDropFiles(var Msg: TMessage); message wm_DropFiles;

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

procedure form.WMDropFiles(var Msg: TMessage);
var
   Filename: array[0 .. 256] of Char;
   Count   : integer;
   Fname:string;
begin
DragQueryFile( THandle(Msg.WParam), 0, { номер файла } Filename,SizeOf(Filename) ) ;
  DragFinish(THandle(Msg.WParam));
   end;
Kommentare (1)
ava
Poseidon | 27.03.2013, 14:43 #
Цитата (Михалыч @  23.3.2013,  11:21 findReferencedText)
Работает хорошо, но нужно сделать что бы принимала не вся форма, а только Panel .

В OnCreate формы ты как-раз и указываешь Handle того, что должно принимать. У тебя там Handle формы. Хочешь что бы принимала только панель?

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


Цитата (Михалыч @  23.3.2013,  11:21 findReferencedText)
И не все файл ,а только с расширением .exe
При получении файла сверяй его расширение
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden