1

NSControl をサブクラス化してカスタム コントロールを取得し、NSCell をサブクラス化してカスタム セルを取得し、カスタム セルでオーバーライドさ-(BOOL)trackMouse:inRect:ofView:untilMouseUpれたメソッドと必要なメソッドをオーバーライドし、customControl でオーバーライド+ (Class)cellClassして customCell を返しました。

セルはコントロールで正常に描画され、有効に設定され、無効に設定されても正常に動作しますが、マウス イベントがトリガーされません。-(BOOL)trackMouse:inRect:ofView:untilMouseUp: デバッグ中に、呼び出されないことに気付きました。「コントロールとセルのプログラミングガイド」に従って -

「コントロールはセルの動作を管理します。NSView から継承することにより、コントロールはユーザー アクションに応答し、画面上の表現をレンダリングする機能を引き出します。ユーザーがコントロールをクリックすると、クリックされtrackMouse:inRect:ofView:untilMouseUp:たセルに送信することで部分的に応答します。 "

私が何か不足している場合は親切に教えてください-私はたくさんグーグルで調べましたが、何も役に立ちませんでした。

4

1 に答える 1

0

ここでこの例を見てください https://github.com/mtavkhelidze/MTControlWithCell

于 2014-05-05T10:18:45.633 に答える