以编程方式在NSMatrix中选择一个单元格将自动使该单元格可见

时间:2018-07-31 02:52:57

标签: objective-c nsscrollview nsmatrix

我一直在处理一些旧代码,目前的情况是我将NSMatrix作为NSScrollView中的一组单选按钮使用。 NSMatrix位于NSScrollView的顶部,并且NSScrollView可以包含多达数百个其他子视图。

每次使用功能-(void)selectCellAtRow:(NSInteger)row column:(NSInteger)column通过编程方式选择NSMatrix中的单选按钮时,NSScrollView都会自动向上滚动,以便所选单选按钮可见。一些客户觉得这很烦人。

该函数的默认行为吗?如何停止这种自动滚动?

相关但不相同的问题: Selecting Item of NSMatrix programatically

1 个答案:

答案 0 :(得分:1)

selectCellAtRow:column:触发scrollCellToVisibleAtRow:column:。子类NSMatrix,覆盖

- (void)scrollCellToVisibleAtRow:(NSInteger)row column:(NSInteger)col;

并且不要调用super(如果矩阵不可见)。