16 cocoa objective-c cursor nssplitview
我有一个带有三个子视图的NSSplitView(NO UISplitView(Controller)!!).现在,对于最后一个分隔符(索引1),我希望分隔符不显示拖动光标(两个箭头指向彼此之外).我有这个停止拖动,但光标仍然显示:
- (CGFloat)splitView:(NSSplitView *)splitView constrainSplitPosition:(CGFloat)proposedPosition ofSubviewAt:(NSInteger)dividerIndex {
if (dividerIndex == 1) {
return [splitView frame].size.width - 161;
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,我只想隐藏索引处分隔符的光标1.谁能帮我?谢谢.:)
不,我不想使用BWToolkit.
Mik*_*e A 81
我知道这已经回答了一段时间,但提供的答案并不适合我的需要.
委托方法splitView:effectiveRect:forDrawnRect:ofDividerAtIndex:允许您设置拖动分隔符的有效矩形.如果您返回NSZeroRect,则无论您在splitView:constrainMaxCoordinate:ofSubviewAt:和中的设置如何都不会出现拖动光标splitView:constrainMinCoordinate:ofSubviewAt:.
希望能帮助其他人登陆这里.
尝试使用splitView:constrainMaxCoordinate:ofSubviewAt:andsplitView:constrainMinCoordinate:ofSubviewAt:代替splitView:constrainSplitPosition:ofSubviewAt:。
前两个方法在用户拖动鼠标时调用一次,它们为 NSSplitView 提供了足够的信息,以了解如何在拖动过程中更改光标。
当用户拖动分割器时,后者会被重复调用,因此 NSSplitView 没有足够的信息来知道您每次返回一个常量值,因此无法更改光标。
| 归档时间: |
|
| 查看次数: |
5267 次 |
| 最近记录: |