テーブル列のチェックボックスがクリックを登録しない
-
22-09-2019 - |
質問
列を動的に追加するテーブルビューがあります。どの列が必要になるか予測できないため、この方法で行う必要があります。
一部のコラムは、 チェックボックス しかし、アプリケーションを実行するときにそれらをクリックすることができません。列とチェックボックスは編集可能に設定されていますが、チェックボックスをクリックしてもチェックが設定されません。何かが足りないのでしょうか?
アップデート
チェックボックスの状態を設定する方法:
- (void)tableView:(NSTableView *)theTableView
setObjectValue:(id)theObject
forTableColumn:(NSTableColumn *)theColumn
row:(int)rowIndex
{
if (theTableView == resultsTableView) {
if ([[theColumn identifier] isEqualToString:CHCheckBoxColumnIdentifier]) {
NSInteger state = [[theColumn dataCell] state];
if (state == NSOnState) {
[[theColumn dataCell] setState:NSOffState];
} else {
[[theColumn dataCell] setState:NSOnState];
}
/*
NSLog(@"%@", theObject);
NSLog(@"%@", theColumn);
NSLog(@"%i", rowIndex);
*/
}
}
}
解決
あなたの列は、コントローラにバインドされているか、NSTableDataSourceプロトコルを使用していますか?私は後者を疑うが、あなたは指定する必要があります。
私の前提に行く:チェックボックスをクリックすると、-tableView:setObjectValue:forTableColumn:row:
方法で何か他のものと同じように処理されます。あなたのオブジェクトは、ボタンの状態になります...
所属していません StackOverflow