2

簡単なココア プロジェクトを作成NSButtonし、ウィンドウに を追加しました。次にNSScrollView、ウィンドウに を追加して非表示にしましたNSButton。しかし、スクロールビューをクリックするとNSButtonアクションが反応するのがおかしい!

タッチ イベント チェーンに何かあると思いますが、見つけられませんでした。たとえば、私は使用しようとします:


- [NSView becomeFirstResponder];
- [NSView setAcceptsTouchEvents:];

SO 私が望むのは、一番前のビューだけがファーストレスポンダーになることであり、タッチイベントはそのスーパービューなどには送信されません。

ありがとう。これはビュー階層です:

ここに画像の説明を入力

スクロール ビューとボタンの両方がウィンドウ ビューに追加され、スクロール ビューのフレームにはボタンのフレームが含まれます。つまり、ボタンはスクロール ビューによって非表示になりますが、クリック イベントは引き続き受信されます。

4

1 に答える 1

0

またはのビューにmouseDown:イベントを追加する必要があります。このような:NSScrollViewNSCrollView

-(void)mouseDown:(NSEvent *)theEvent {
    NSLog(@"MouseDown in NSView");
}
于 2012-08-23T08:08:22.023 に答える