我在NSBox中放置了几个控件(按钮,文本字段等)。是否可以禁用用户无法访问控件的NSBox(意味着无法单击按钮或无法在文本字段中写入内容)?

nsview怎么样?

最佳答案

或者,如果您有一个自定义的NSBox,则可以覆盖NSView的-hitTest :(有条件地)

- (NSView *)hitTest:(NSPoint)aPoint {
    if (!enabled) return nil;
    else return [super hitTest:aPoint];
}


停止窗口将事件发送到所有子视图。

为了提供视觉反馈,可以在自定义NSBox的-drawRect方法中有条件地绘制某种叠加层。

关于cocoa - 如何从代码禁用NSBox,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10462876/

10-12 02:18