我是靠谱客的博主 鲜艳墨镜,这篇文章主要介绍NSTableView(三)常用的方法,现在分享给大家,希望可以做个参考。

//获取当前点击的行数
- (void)onItemClicked {

_currentRow = _eventTableView.clickedRow;

}

[TableView setAction:@selector(onItemClicked)];

//双击
  [TableView setDoubleAction:@selector(doubleClick)];
//. 设置默认选中行
    [_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:defaultRow] byExtendingSelection:false];

//  刷新某一行的view
 [_tableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:_tableView.selectedRow] columnIndexes:[NSIndexSet indexSetWithIndex:0]];

//. 插入一行cellView
[_tableView insertRowsAtIndexes:[NSIndexSet indexSetWithIndex:index] withAnimation:nil];

//  删除一行cellView
[_tableView removeRowsAtIndexes:[NSIndexSet indexSetWithIndex:_tableView.selectedRow] withAnimation:nil];

//  tableView的CellView设置右键菜单
需要设置自己的tableView,继承NSTableView
- (NSMenu *)menuForEvent:(NSEvent *)event //  实现此方法
 if (event.type == NSEventTypeRightMouseDown) {
        NSPoint menuPoint = [self convertPoint:[event locationInWindow] fromView:nil];
   			_currentRow = [self rowAtPoint:menuPoint];
        [self selectRowIndexes:[NSIndexSet indexSetWithIndex:_currentRow] byExtendingSelection:NO];
        NSIndexSet *indexSet = [self selectedRowIndexes];
  if ([indexSet containsIndex:_currentRow]) {
                    return [self setMenu];
                }
    return nil;
}

- (NSMenu *)setMenu {
    NSMenu *menu = [[NSMenu alloc] init];
    return menu;
}

//  设置某一行不允许选中
- (BOOL)tableView:(NSTableView *)tableView shouldSelectRow:(NSInteger)row  {
	return NO;
}

//  选中行发生变化时抛出通知
- (void)tableViewSelectionDidChange:(NSNotification *)notification {
}

最后

以上就是鲜艳墨镜最近收集整理的关于NSTableView(三)常用的方法的全部内容,更多相关NSTableView(三)常用内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部