在我看来基于NSTableView我不想取消选择单元格,当点击NSTableView的空白部分,如何服从这种默认行为?不要取消选择基于NStableview的视图中的选定行当被点击外
0
A
回答
1
通过子类化实现NSTableView的鼠标放下事件。在它内部检查点击的点是一行还是空白区域。如果它是空白区域,则再次选择您的表格视图的先前选定的行。
- (void)mouseDown:(NSEvent *)theEvent
{
NSPoint globalLocation = [theEvent locationInWindow];
NSPoint localLocation = [self convertPoint:globalLocation fromView:nil];
NSInteger clickedRow = [self rowAtPoint:localLocation];
NSIndexSet* selectedRows = [self selectedRowIndexes];
NSLog(@"%ld",clickedRow);
[super mouseDown:theEvent];
if(clickedRow == -1)
{
[self selectRowIndexes:selectedRows byExtendingSelection:NO];
}
}
1
改进版从NEHA的回答(此服从选择/取消选择)
子类NSTableView的贯彻:
- (void)mouseDown:(NSEvent *)theEvent {
NSPoint globalLocation = [theEvent locationInWindow];
NSPoint localLocation = [self convertPoint:globalLocation fromView:nil];
NSInteger clickedRow = [self rowAtPoint:localLocation];
if(clickedRow != -1) {
[super mouseDown:theEvent];
}
}
我们忽略的情况下,当我们不” t连续打...
+0
太棒了,+1的改进:) – Neha
相关问题
- 1. 基于视图的NSTableView选择?
- 2. 取消选择NSTableView时,点击表格外的某处
- 3. 处理基于视图的自定义选择样式NSTableView
- 4. 无法取消选择KendoUI树视图中选定的节点
- 5. 取消选中当任何指定的一个被点击
- 6. 更改基于视图的NSTableView的选择颜色
- 7. 点击时选择/取消选择UIButton
- 8. 当表格行被点击时选中和取消选中复选框
- 9. 基于视图的NSTableView的外部笔尖,子视图不会被初始化
- 10. 获取基于NSTableView的NSPopUpButton视图基于NSTableView
- 11. 取消选择DataGrid中的选定行
- 12. 当点击另一个时,选择/取消选中框
- 13. 选择/取消选择基于选择从其他多选
- 14. 点击取消选择之前选择的选项
- 15. 点击了表格行被不选择
- 16. 基于选择定义视图
- 17. 基于视图的NSTableView + NSButton
- 18. 基于视图的NSTableView
- 19. NSTableView的选择和亮点
- 20. 当按钮被点击时,选择列表框中的行
- 21. jQuery的 - 选择一个变量基于该被点击
- 22. 取消选择表视图中的一行不生成动画
- 23. jQuery UI可选 - 不要取消选择某些元素的点击字段
- 24. 自定义UITableViewCell中的复选框取消选择行选择
- 25. 选择/取消选择行中的特定复选框
- 26. (基于视图)NSTableView的reloadDataForRowIndexes:columnIndexes:不删除行视图?
- 27. jQuery的选择和取消选择多个输入点击
- 28. 当点击UISwitch时选择UITableView的行
- 29. 上点击单元格,选择/取消选择复选框
- 30. Jquery选择取消选择复选框点击标题
感谢,像魅力一样工作,确实改进了它的一点点 –