怎么让我的Memo支持windows资源管理器的文件拖放?给代码也好,控件也好,什么都好,有用就给分!我的E-Mail: [email protected]谢谢各位!

解决方案 »

  1.   

    type
      TSDIAppForm = class(TForm) 
    public
      procedure WMdropfiles(var msg:tMessage);
      message WM_DROPFILES;
    end;
    implementationprocedure TForm1.FormCreate(Sender: TObject);
    begin
    dragacceptfiles(handle,true);//启动程序时申请允许拖放
    end;procedure TForm1.FormDestroy(Sender: TObject);
    begin
    dragacceptfiles(handle,false);//关闭程序时关闭拖放
    end;procedure TForm1.WMdropfiles(var msg:tmessage);//处理系统拖放事件
    var name1:array[0..100] of char;
    nm1:string;
    begin
         dragqueryfile(thandle(msg.wparam),0,name1,200);
         nm1:= trim(name1) ;
         memo1.Lines.LoadFromFile(nm1);
    end;
      

  2.   

    用API
    Dragacceptfiles,Dragqueryfile在窗体创建时首先用Dragacceptfiles使窗体能接受文件,然后用dragqueryfile得到文件名,再在memo中装入文件。