1

複数のメッセージを送信できる必要がある複雑なカスタム NSControl を作成しようとしています。

たとえば、マウス オーバーでアクションを送信し、マウス ドラッグで別のアクションを送信する必要があります。

ターゲットをコントロールに配線して、コントロールがターゲットにメッセージを送信する方法がわかりません。

私の意見では、次の手順に従う必要があります。

  1. NSControlieをインスタンス化するmyControl

  2. すべてのアクションに対して myControl の Target アクションを設定します (その方法がわかりません! )

  3. myControl インスタンスはアクションを送信します[NSApp sendAction: [self action] to: [self target] from: self]

ステップ2で私を助けてもらえますか?私の手順を確認しますか?

4

1 に答える 1

4

委任パターンが必要です。標準の Cocoa コントロールは、最大で 1 つのアクションを送信し、追加のアクションには委任を使用します。IB は複数のアクションの設定をサポートしていないため、ステップ 2 を解決できません。

がアウトレットの場合delegate、デリゲートがファイルの所有者であるか、この nib でインスタンス化されている場合はいつでも IB から直接設定できNSWindowますNSTableView

于 2012-07-03T09:11:02.023 に答える