編集: 私が説明している問題を再現する小さな XCode プロジェクトを GitHub で作成しました: https://github.com/mdinacci/testnscursor
NSTableCellView
でマウスの出入りイベントを追跡するカスタムがありNSTextField
ます。マウスがフィールドに入ると、カーソルを指差し手の形に変更します。
- (void)mouseEntered:(NSEvent *)theEvent
{
NSCursor *cursor = [NSCursor pointingHandCursor];
[cursor set];
}
- (void)mouseExited:(NSEvent *)theEvent
{
NSCursor *cursor = [NSCursor arrowCursor];
[cursor set];
}
テーブルは 内に表示されNSPopover
、ポップオーバーがフォーカスされているときは上記のコードが美しく機能しますが、ポップオーバーがフォーカスされていないときは機能しません。セル ビューは入力/終了イベントを受け取りますが、カーソルは単に更新されません。
これはバグですか?ポップオーバーがフォーカスされていないときにカーソルが更新されない理由はありますか?