首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使NSSplitView的分隔符不可拖且不显示拖动光标

使NSSplitView的分隔符不可拖且不显示拖动光标
EN

Stack Overflow用户
提问于 2010-11-03 20:51:55
回答 2查看 5.8K关注 0票数 16

我有一个NSSplitView (NO UISplitView(Controller)!!),它有三个子视图。现在,对于最后一个分隔符(索引1),我希望分隔器不要显示拖动光标(两个箭头指向彼此)。我可以停止拖动,但光标仍在显示:

代码语言:javascript
复制
- (CGFloat)splitView:(NSSplitView *)splitView constrainSplitPosition:(CGFloat)proposedPosition ofSubviewAt:(NSInteger)dividerIndex {
  if (dividerIndex == 1) {
    return [splitView frame].size.width - 161;
  }
}

注意,我只想在索引1处隐藏分隔符的光标。有谁可以帮我?谢谢。:)

不,我不想用BWToolkit。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-04 15:13:00

尝试使用splitView:constrainMaxCoordinate:ofSubviewAt:splitView:constrainMinCoordinate:ofSubviewAt:而不是splitView:constrainSplitPosition:ofSubviewAt:

当用户拖动鼠标时,前两种方法只被调用一次,它们为NSSplitView提供了足够的信息,使其知道如何在拖动期间更改光标。

当用户拖动拆分器时,会反复调用后者,因此NSSplitView没有足够的信息来知道每次返回一个常量值,因此不能更改游标。

票数 0
EN

Stack Overflow用户

发布于 2012-03-05 17:45:34

我知道这个问题已经回答了一段时间,但所提供的答案并不符合我的需要。

委托方法splitView:effectiveRect:forDrawnRect:ofDividerAtIndex:允许您设置拖动分隔符的有效矩形。如果您返回NSZeroRect,则无论您在splitView:constrainMaxCoordinate:ofSubviewAt:splitView:constrainMinCoordinate:ofSubviewAt:中的设置如何,都不会出现拖动游标。

希望这能帮助其他人降落在这里。

票数 82
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4091560

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档