3

ユーザーがコマンド ボタンを押しながらクリックする必要なく、NSTableView で複数選択動作を実現する方法はありますか? これは、HandleControlClick() 関数の呼び出し時に、マウス ダウン処理中に cmdKey 修飾子フラグを論理和することにより、Carbon リスト ボックスで簡単に実行できました。私は Cocoa を初めて使用し、イベントをプログラムで簡単に変更する方法や、これが最善の解決策であるかどうかがわかりません。

4

1 に答える 1

4

NSTableView をサブクラス化し、テーブル ビューをこのサブクラスのインスタンスにします。サブクラスでは、 と の両方に応答して、mouseDown:受け取っmouseUp:たものに基づいて新しいマウス イベントを作成し、フラグのみをNSCommandKeyMaskモディファイア フラグに論理和し、新しいイベントを に渡しsuperます。

ただし、複数のアイテムを選択できることがユーザーに明らかになることを願っています。また、Shift キーを壊さないでください。連続した選択が引き続き機能することを確認してください。

于 2009-07-20T19:09:13.607 に答える