2016-07-17 5 views
0

마우스가보기에있는 위치를 기반으로 마우스 커서를 변경하는 추적 영역이있는보기가 있습니다. 이 동일한보기는 특정 유형의 파일을 끌기위한 대상이기도합니다.마우스가 AppKit에서 드래그되고 있는지 감지

파일을 Finder에서이보기로 드래그하면 녹색 플러스 아이콘이 커서 옆에 잠깐 표시되지만 추적 영역이 커서를 업데이트하면 사라집니다. 마우스가 드래그되고 커서가 업데이트되어 있지 않다는 것을 알리는 방법이 있습니까?

답변

0

내가 바라는만큼 직접적인 것은 아니지만, 하나의 해결책은 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. 
} 
관련 문제