我一直在为 Mac 开发一个菜单栏笔记应用程序。它是用 Objective-C 和 Cocoa 编写的,我正在使用 BWToolkit。我的问题是在 BWTransparentTableView 中获取 keyDown: 和 mouseDown: 事件,这是 NSTableView 的子类。我只是无法让它工作。我试过在网上搜索,有些地方说你必须继承 NSTableView。我已经尝试过了,但它仍然不起作用。我对 Objective-C 和 Cocoa 很陌生,我可能只是做错了一些事情。
问问题
2762 次
1 回答
4
an 中的项目在NSTableView
缓慢双击或按下 Return 键时将自动开始编辑。确保表格视图、单元格和数组控制器(如果使用)被标记为可编辑。
如果您不使用NSArrayController
,请确保您的表格视图有一个委托并且它响应tableView:shouldEditTableColumn:row:
.
要处理双击,您只需要设置doubleAction
表格视图的:
- (void)awakeFromNib
{
[tableView setTarget:self];
[tableView setDoubleAction:@selector(doubleClickInTable:)];
}
- (void)doubleClickInTable:(id)sender
{
NSInteger rowIndex = [sender selectedRow]; //Use selectedRowIndexes if you're supporting multiple selection
//Handle the double click
}
请注意,这些方法都不需要您对NSTableView
.
于 2009-11-22T23:21:12.530 回答