아감사합니다!!!
마우스는 이제 + 모양이 잘뜨지만 아직도 if(Msg.Msg==WM_DROPFILES)
if문을 계속 돌며 무한적으로 Msg.Msg 의 값이 변동만 있을뿐 이부분을 잡아내질 못하고 있습니다.. ㅠㅠ
장성호 님이 쓰신 글 :
: DragAcceptFiles API 호출할때 ListView객체가 아닌
: ListView의 Window-Handle을 넘겨줘야 합니다.
:
:
: DragAcceptFiles(ListView1->Handle, true);
:
:
: 그럼..
:
: 거짓말처럼 님이 쓰신 글 :
: : TWndMethod OrigProc1;
: :
: : void __fastcall TForm1::FormCreate(TObject *Sender)
: : {
: : DragAcceptFiles(ListView1, true);
: : OrigProc1 = ListView1->WindowProc;
: : ListView1->WindowProc = EditProc1;
: : }
: :
: : //---------------------------------------------------------------------------
: :
: : void __fastcall TForm1::EditProc1(TMessage& Msg)
: : {
: : if(Msg.Msg==WM_DROPFILES)
: : {
: : AddFileToEdit((HANDLE)Msg.WParam);
: : }
: : OrigProc1( Msg );
: : }
: :
: : //---------------------------------------------------------------------------
: :
: : void __fastcall TForm1::AddFileToEdit(HANDLE hDrop)
: : {
: : AnsiString FilePath;
: : FilePath.SetLength(MAX_PATH);
: : int FileCount = DragQueryFile(hDrop, 0xFFFFFFFF, FilePath.c_str(), MAX_PATH);
: : if(FileCount)
: : {
: : DragQueryFile(hDrop, 0, FilePath.c_str(), MAX_PATH);
: : ShowMessage(FilePath);
: : //Edt_FileName->Text=FilePath;
: : }
: : DragFinish(hDrop);
: : }
: : //---------------------------------------------------------------------------
: :
: : EditProc1 이 함수로는 접근을 하지만 탐색기에 있는 폴더를 드래그 해도 마우스 모양이 + 모양이 안나오고 x 표시가
: :
: : 되며 WM_DROPFILES 위 이벤트를 감지 못하내요 ㅠㅠ
: :