objective-c - 检测双击 NSTableview header

标签 objective-c cocoa header nstableview

我需要检测对 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/

相关文章:

objective-c - 如何使 UILabelView 显示带有新行的文本?

javascript - 针对 Mobile + CSS 类的 jQuery?

javascript - Ajax缓存控制

ios - 使用 UIActivityViewController 分享超过 5 张图片

ios - IOS 教程中的 UnwindToList 未激活

objective-c - 根据内容长度修改多行 NSTextField 的字体大小

objective-c - 如何消除 <Class> 可能无法响应 <Selector> 的警告?

macos - 无论事件流创建选项如何,都会设置 FSEvents 文件标志

macos - 如何创建一个简单的包装 Cocoa 应用程序?

jquery - 将媒体查询应用于 jQuery