添加子视图后的NSView鼠标事件

时间:2011-04-11 09:20:59

标签: objective-c cocoa nsview

在向NSView添加子视图后,我的鼠标事件响应NSView的区域减去添加的SubVIew。我怎么能避免这种情况?我想让它回应所有的superview。 感谢。

2 个答案:

答案 0 :(得分:2)

您还可以在容器视图中实现hitTest:方法。

- (NSView *) hitTest: (NSPoint) aPoint {
    return [super hitTest:aPoint] ? self : nil;
}

现在只有容器视图才能接收鼠标事件。

答案 1 :(得分:1)

您可以覆盖子视图[NSView hitTest:]方法并返回超级视图。

- (NSView *) hitTest: (NSPoint) aPoint {
    return [self superview];
}