0
我有一個視圖,其中有一個跟蹤區域,根據鼠標在視圖中的位置改變鼠標光標。同樣的觀點也是某種文件類型的拖拽目標。檢測鼠標是否被拖入AppKit
當我將一個文件(例如從Finder)拖動到該視圖中時,綠色加號圖標會在光標旁邊短暫顯示,但在跟蹤區更新光標後會消失。有沒有什麼方法可以告訴我鼠標正在拖動,而不是更新光標?
我有一個視圖,其中有一個跟蹤區域,根據鼠標在視圖中的位置改變鼠標光標。同樣的觀點也是某種文件類型的拖拽目標。檢測鼠標是否被拖入AppKit
當我將一個文件(例如從Finder)拖動到該視圖中時,綠色加號圖標會在光標旁邊短暫顯示,但在跟蹤區更新光標後會消失。有沒有什麼方法可以告訴我鼠標正在拖動,而不是更新光標?
不像我希望的那麼直接,但我想出的一個解決方案是在NSDraggingDestination
方法中設置一個標誌,然後在設置光標的代碼中檢查該標誌。這似乎工作得很好。
- (NSDragOperation)draggingEntered:(id<NSDraggingInfo>)sender {
self.dragIsBeingPerformed = YES;
// Rest of method.
}
- (void)draggingExited:(id<NSDraggingInfo>)sender {
self.dragIsBeingPerformed = NO;
// Rest of method.
}
- (void)concludeDragOperation:(id<NSDraggingInfo>)sender {
self.dragIsBeingPerformed = NO;
// Rest of method.
}