Советы по Delphi

         

Как получить список файлов, которые были перенесены на мою форму, например, из Проводника?


Из советов Nomadic'a:

Развлекался когда-то - вот, осталось:

    unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI, Grids, StdCtrls;
type


TForm1 = class(TForm) lb: TListBox; Memo1: TMemo; Button1: TButton; Button2: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private procedure WMDropFiles(var M: TMessage); message WM_DROPFILES; { Private declarations } public { Public declarations } end;
var
Form1: TForm1;
implementation

Var

CountFiles  : integer; SizeName    : integer; cch         : integer;
Var
hDrop : integer; Point : TPoint; lpszFile : PChar;
{$R *.DFM}

procedure TForm1.WMDropFiles(var M: TMessage);
Var
i: integer; begin
hDrop := M.WParam; DragQueryPoint(hDrop,Point); CountFiles := DragQueryFile(hDrop, $FFFFFFFF, nil, cch); for i:=0 to CountFiles-1 do begin SizeName   :=  DragQueryFile(hDrop, i, nil, cch); GetMem(lpszFile,SizeName+1); DragQueryFile(hDrop, i, lpszFile, SizeName+1); lb.Items.Add(lpszFile); FreeMem(lpszFile,SizeName+1); end; DragFinish(hDrop); end;

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

procedure TForm1.Button1Click(Sender: TObject);
begin
lb.Items.Clear; end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ShellAbout(Handle,'Anton Saburov','APSystems',0); end;

end.

[001082]



Содержание раздела