我正在考虑制作不可滚动的nstableview。
是否可以有一个没有滚动视图的表格视图,或者可能从滚动视图中提取表格视图?
谢谢
我正在考虑制作不可滚动的nstableview。
是否可以有一个没有滚动视图的表格视图,或者可能从滚动视图中提取表格视图?
谢谢
我不知道这是否是一个好习惯(我在谷歌上搜索 - 这就是我发现你的问题的方式)(编辑:为什么不这样?),但可以在没有 NSScrollView 的情况下获得 NSTableView:拖动出一个“自定义视图”并将其身份设置为NSTableView
. 你在这!唯一的问题是你没有从 IB 那里得到任何关于 tableview 的视觉反馈。但是您仍然可以在 IB 中设置网点(委托、数据源等)。恐怕您必须从代码中设置 UI 选项(例如“绘制背景”等)(至少如果您使用我的“技巧”,它们不会出现)。
你甚至可以在没有 IB 的情况下做到这一点(我在 SO 上找到了这段代码,我没有测试它):
MyDataSource *dataSource = [[MyDataSource alloc] init];
NSTableColumn *column = [[NSTableColumn alloc] initWithIdentifier:@"onlyColumn"];
NSTableView *table = [[NSTableView alloc] initWithFrame: frameWhereTableViewShouldGo];
[table setDataSource:dataSource];
[table addTableColumn:column];
[theViewYouWantATableViewIn addSubview:table];
至少你可以实现你的 NSScrollView 子类并重新实现它的scrollWheel:
方法。
@interface MyScrollView : NSScrollView
@property (nonatomic) BOOL scrollingEnabled;
@end
@implementation
- (void)scrollWheel:(NSEvent *)event
{
if (self.scrollingEnabled)
[super scrollWheel:event];
}
@end
你是这个意思吗?
self.tableView.scrollEnabled=NO;