3

これらを受け取るには、 scrollWheel: でなければならないようです。残念ながら、トラックパッドのスクロール デルタはマウスよりも桁違いに大きいため、スクロール速度は非常に高速です。したがって、適切なダンパーを適用できるように、それらを区別する必要があります。

ドキュメントは、通常はscrollWheelでNSEventのサブタイプをチェックしてこれを行うが、具体的には機能しないことに困惑しています。しかし、彼らはあなたが何をすべきかを言いません。実験の結果、トラックパッドのスクロールは実際には NSTouchEventSubtype として正しく型指定されていませんが、それらの型マウス ホイールのスクロールとは異なります (NSTabletPointEventSubtype と NSMouseEventSubtype)。問題は、NSTabletPointEventSubtype が本物のタブレット スクロール イベントにも使用されることであり、それらのデルタはさらに途方もなく高いことです。だから私もそれらを区別する必要があります。

注: 同様の以前の質問には、ドキュメント化されていない API に基づく推論、または同様のハックを特徴とする他の唯一の提案であるthisが含まれます。scrollWheel: を完全に無視して手動でタッチ イベントを追跡することを推奨しているように見える人もいますが、これは多くの冗長な作業であり、将来の OS リリースで機能しなくなる可能性があります。

4

1 に答える 1

1

[event hasPreciseScrollingDeltas]はあなたが探しているものだと信じています。OSX10.7で利用できます。

于 2013-01-20T03:43:07.463 に答える