http://safariexamples.informit.com/0672321157/Ebooks/D6DG/chapter16.pdf
이 문서를 읽어보면 원하는 답을 얻을 수 있을겁니다.
곽성주 님이 쓰신 글 :
: 답변감사합니다.
:
: 그런데 제가 원하 기능은 아이콘 영상이 아니고 그영상파일을 보이려고 한것이었는데여 ^^;
: 돌려보니 아이콘은 잘 보이네요~
:
: 아뭏든 감사합니다.
: ------------------------------------------------------------------------------------
: civilian 님이 쓰신 글 :
: : unit Unit1;
: :
: : interface
: :
: : uses
: : Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
: : Dialogs, ExtCtrls;
: :
: : type
: : TForm1 = class(TForm)
: : Image1: TImage;
: : procedure FormCreate(Sender: TObject);
: : private
: : procedure ExtractFromLNK(FileName: String);
: : procedure WMDROPFILES (var Msg: TMessage); message WM_DROPFILES;
: : public
: : end;
: :
: : var
: : Form1: TForm1;
: :
: : implementation
: :
: : {$R *.dfm}
: :
: : uses
: : ShellAPI;
// API함수 사용을 위해 반드시 포함
: :
: :
: : //
: : // 바로가기에서 아이콘을 뽑아 TImage에 뿌리는 함수
: : //
: :
: : procedure TForm1.ExtractFromLNK(FileName: String);
: : var
: : Icons: PWORD;
: : ico: TIcon;
: : hic: HIcon;
: : begin
: : GetMem(Icons, sizeof(word));
: : Icons^ := 0;
: : ico := TIcon.Create;
: : hic := ExtractAssociatedIcon(Hinstance, PChar(FileName), Icons^);
: : try
: : ico.handle := hic;
: : DrawIcon(ico.handle, 0, 0, hic);
: : if not (ico.Empty) then
: : Image1.Picture.Icon := ico;
: : finally
: : FreeMem(Icons, sizeof(word));
: : ico.free;
: : end;
: : end;
: :
: :
: : //
: : // 파일이 드롭되었을 때 처리하는 함수
: : //
: :
: : procedure TForm1.WMDROPFILES(var Msg: TMessage);
: : var
: : i: Integer;
: : Amount: Integer;
: : Size: Integer;
: : Filename: PChar;
: : S: String;
: : begin
: : inherited;
: :
: : Amount := DragQueryFile(Msg.WParam, $FFFFFFFF, Filename, 255);
: : for i := 0 to (Amount-1) do
: : begin
: : size := DragQueryFile(Msg.WParam, i , nil, 0) + 1;
: : Filename:= StrAlloc(size);
: : DragQueryFile(Msg.WParam,i , Filename, size);
: : s := ExtractFileExt(FileName);
: : if s = '.lnk' then
: : begin
: : ExtractFromLNK(FileName);
: : end;
: : StrDispose(Filename);
: : end;
: : DragFinish(Msg.WParam);
: : end;
: :
: :
: : //
: : // 드롭 메세지를 받을 수 있도록...
: : //
: :
: : procedure TForm1.FormCreate(Sender: TObject);
: : begin
: : DragAcceptFiles(Form1.Handle,
True));
: : end;
: :
: : end.
: : 곽성주 님이 쓰신 글 :
: : :
: : :
: : : 그림파일 아이콘을 드래그하여 이미지콘트롤 위에 놓으면 그림이 보여지게 하고 싶습니다. 어찌해야 하나요?
: : :
: : : 아이콘은 바탕화면에서 긁어올것입니다.
: : :
: : : 고수님들의 조언 바랍니다~