我有一個程序帶有一個NSOutlineView(支持單一選擇),我希望能夠拖動元素。這些元素應該作爲文本或文件接收:例如,將項目放在TextEdit窗口上應該放置文本,但是將項目放在Finder上應該創建一個文件。我不想在我的大綱視圖上放下任何東西,即使它來自它本身。這似乎很容易,但由於某種原因,我無法讓它工作。NSOutlineView元素仍然無可救藥地不可裁剪
我檢查了NSOutlineView阻力和來自蘋果掉落例子,我來實現以下方法(加上一些絕對無關的內容):
-(BOOL)outlineView:shouldSelectItem: // I don't expect to drag unselectable items
-(NSArray*)outlineView:namesOfPromisedFilesDroppedAtDestination:forDraggedItems:
-(BOOL)outlineView:writeItems:toPasteboard:
然而,當我試圖從拖動項目我大綱視圖,沒有任何反應。相反,它只是改變光標後面的選擇。
我已經把斷點放在最後兩個方法中,並且它們永遠不會被調用,所以它們的實現不是直接的問題。
我必須在這裏丟失一些非常明顯的東西。
此外,這還不是一個問題,但我該如何提供內容到我承諾的文件?
感謝您的時間,這可能會在稍後派上用場;然而,我知道我今晚在火車上做錯了什麼。無論如何,請爲此付出努力+1。 – zneak 2011-03-24 22:26:41