讓自己的軟體實現拖拽開啟檔案
//宣告
protected procedure wmdropfiles(var msg : tmessage); message wm_dropfiles;
//實現
procedure tformmain.wmdropfiles(var msg: tmessage); var i, n: integer; buffer: array[0..255] of char; begin //得到拖拽檔案數量 n := dragqueryfile(msg.wparam, $ffffffff, buffer, 255);
//處理選擇多個檔案 for i := 0 to n - 1 do begin //獲取拖拽檔名 dragqueryfile(msg.wparam, i, buffer, 255);
//檔名就在buffer裡面了 if uppercase(extractfileext(buffer)) = '.bzlx' then begin //判斷檔案是否已經開啟 if uppercase(buffer) = uppercase('test.bzlx') then begin messagedlg('檔案test.bzlx已經開啟!', (mtinformation),[mbok],0); exit; end;
//開啟檔案 openfile(buffer);
exit; end; end;
//結束拖拽 dragfinish(msg.wparam); end;
//初始化
procedure tformmain.formcreate(sender: tobject); begin //使視窗控制代碼可以接收拖拽操作
dragacceptfiles(handle, true);
end;
delphi 實現拖拽開啟檔案
步驟如下,delphi 7測試通過 1 在uses 中增加 shellapi 2 增加拖拽的訊息處理函式 宣告 protected procedure wmdropfiles var msg tmessage message wm dropfiles 實現 procedure tform1.wmdr...
win32 API實現檔案拖拽開啟
在windows中,我們開啟乙個文字檔案後,可以將另乙個文字檔案拖拽進來,從而實現開啟此檔案。那麼這個功能是怎麼實現的呢?經過一下午的實踐,現將具體 分享如下 include define id edit 1 lresult callback wndproc hwnd,uint,wparam,lpa...
接受檔案拖拽視窗的實現
長期以來,我似乎都沒有對知識進行總結,寄希望於部落格吧。早上閒著沒事,想起來一篇關於拖拽的文章,第一次見到還是借助於google大俠,搜了n久才發現該文章,如今已經滿地都是中文版本了。本人堅持自力更生的原則,自己做一遍吧,不想只抄襲人家的內容,然後儲存一下就再也不看了。想把知識運用起來。廢話少說,入...