TableView は IB で作成され、チェックボックスのある列を 1 つだけ持つことが望ましいです。チェックボックスを作成する 1 つの方法は、IB を使用して NSButtonCell を列にドラッグし、NSTableViewDataSource プロトコルの実装に準拠することです。
- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
- (NSInteger)numberOfRowsInTableView:(NSTableView *)aTableView
したがって、クラスオブジェクトがTableViewの列へのデータソースとして機能し、列に各行のチェックボックスなどのオブジェクトが含まれている場合、クラスはチェックボックスのオン/オフ状態データのみを提供しますか、それとも提供しますか?チェックボックスオブジェクト?
関連する質問は次のとおりです。
- TableView は NSButtonCells を作成して含んでいますか?
- 1 に対する答えが「はい」の場合、NSButtonCell のプロパティ (タイトルなど) をどのように設定/変更できますか?
- TableView が NSButtonCells を作成して維持するのではなく、データソース クラスでそれらを作成できますか? つまり、IB を使用して NSButtonCell を列にドラッグする代わりに、awakeFromNIB などのメソッドで NSButtonCells を追加できますか?
- 特定の列にセル オブジェクトの種類を混在させる方法はありますか。たとえば、column1row1 にテキスト見出しを配置し、column1row2 にチェックボックスを配置できますか?
ありがとう。