2012-09-12 26 views
0

我需要拖動&將項目從一個TreeList拖放到另一個ThreeList,但只找到在相同TreeList中進行創建的教程。任何可以幫助這個嗎?如何從文件系統(窗口資源管理器)拖放文件或文件夾到TreeList?我使用MFC C++。謝謝!在C++上的兩個MFC TreeList之間拖放

回答

2

沒有省略強制性真正回答所有問題MFC(這是「不使用MFC —除非它是1997年你住的地方」),OLE拖&下降,將幫助你實現這兩個目標。

雖然我沒有一個MSVC得心應手的那一刻,這個例子似乎相當透徹......與移動,複製和滾動:

http://www.ucancode.net/CPP_Library_Control_Tool/OLE-DRAG-DROP-TREE-Control-CTreeCtrl-VC-Article.htm

您可以使用它作爲一個基礎。但隨後的下降,在從 - Windows的資源管理器,扔在你OnDragEnter()OnDragOver()方法額外的檢查,看是否CF_HDROP數據是可用的:

if (pDataObject->IsDataAvailable(CF_HDROP)) { 
    /* Extract the DROPFILES data out of the pDataObject */ 
} 

本文進入如何獲得一個細節文件名列表的是古怪DROPFILES OLE結構:

http://www.codeproject.com/Articles/840/How-to-Implement-Drag-and-Drop-Between-Your-Progra


對於相反,如果你想看到的東西,是NO牛逼可怕的設計,看看Qt的拖放&跌落樣本:

http://doc.qt.nokia.com/4.7-snapshot/dnd.html#examples

+2

+1爲「不使用MFC除非其1197你住的地方」 – cplotts

+0

公頃,我的意思1997年...但也許1197更有趣。大聲笑。 – cplotts

+0

什麼是MFC的新選擇? – MasterHD