【发布时间】:2011-07-18 20:03:41
【问题描述】:
我有两个并排显示的 NSOutlineView,它们包含相同数量的行(这是先决条件),当用户使用鼠标、键盘或滚动条滚动时我需要同步它们,以便我看到相同的视图部分(或行)。
我是 Cocoa 领域的新手,我不知道如何实现这一点
【问题讨论】:
标签: cocoa nsoutlineview
我有两个并排显示的 NSOutlineView,它们包含相同数量的行(这是先决条件),当用户使用鼠标、键盘或滚动条滚动时我需要同步它们,以便我看到相同的视图部分(或行)。
我是 Cocoa 领域的新手,我不知道如何实现这一点
【问题讨论】:
标签: cocoa nsoutlineview
您需要获取 NSOutlineView 的封闭滚动视图的剪辑视图:
NSClipView * clipView = [[outlineView enclosingScrollView] contentView];
...并将其 -setPostsFrameChangedNotifications: 设置为 YES。监听来自该视图的 NSViewFrameDidChangeNotification 并做出相应的响应。
注意:命名法不是很清楚。大多数人对 -contentView: 的第一个期望是它返回正在滚动的视图。 -contentView: 方法返回滚动视图的 NSClipView,而 -documentView: 方法返回正在滚动的实际视图。
【讨论】: