我需要检测对 NSTableView
标题的双击。
我发现双击时会触发以下内容,但我无法检测到单击了哪一列:
[table setTarget:self];
[table setDoubleAction:@selector(myDoubleClickInList:)];
在 myDoubleClickInList 中:我使用的方法
[table clickedRow] == -1
获取标题。
但我无法从[table clickedColumn]
获取列标识符
有可能吗?
最佳答案
假设您可以访问名为 table
的实例变量或属性,那么以下内容将使您获得列标识符,
NSInteger column = [table clickedColumn];
NSRange columnRange = NSMakeRange(0, [table numberOfColumns]);
if (NSLocationInRange(column, columnRange){
NSTableColumn *tableColumn = [[table tableColumns] objectAtIndex:column];
NSString *identifier = [tableColumn identifier];
// Now do something with the column identifier...
} else {
// The click was not in a column, do something else...
}
关于objective-c - 检测双击 NSTableview header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15174814/