小编tgf*_*ynn的帖子

如何在Cocoa中为一个NSView创建一个视图控制器第一响应者

我正在尝试为基于自定义NSOpenGLView的视图实现一个视图控制器(这是Cocoa,而不是Cocoa Touch).

视图包含在NIB加载的窗口中,但它没有自己的NIB.实际上,窗口包含视图的多个实例.

我想将鼠标事件路由到控制器而不是视图.我想在用户在相应视图中单击后立即发生这种情况.

那么怎么做呢?

我已经尝试使用视图的yesFirstResponder方法调用makeFirstResponder并将控制器作为参数.但是,这似乎不起作用,如果NSView :: becomeFirstResponder返回YES,视图仍会接收鼠标事件而不是控制器.如果它返回NO,那么我的类都没有收到鼠标事件.

当然,我可以在视图中实现鼠标事件处理方法,并将它们显式转发给控制器,但似乎应该有更好的方法来处理它.

macos cocoa

1
推荐指数
1
解决办法
2595
查看次数

标签 统计

cocoa ×1

macos ×1