-1

我在 mac 上写了一个 mozilla 插件。我正在尝试捕获按钮单击等事件。我已经完成了在界面构建器中创建视图并将 sendActions 链接到程序中的方法的正常操作。这适用于独立程序。

但是,在我的 NPAPI 插件中,这些方法永远不会被调用。按钮做出反应,按下,无论如何,但它没有做它的动作。

相反,调用了 NPP_HandleEvent 方法,但我从来没有得到 MouseDown 或 MouseUp 事件,只有 UpdateEvt。

我将按钮设置为通过以下方式接受点击:(superview 是 Mozilla 视图,topview 是我的视图层次结构的顶部。)

[superView setNextResponder: topView]; [topView setNextResponder: nil]; [browserWindow makeFirstResponder: topView];

没关系:我是个白痴。它正在调用按钮发送的操作。我在看错误的方法。当我实际使用 doZoom: 方法时,这将教我离开 zoom: 方法... D'oh,。

4

1 回答 1

1

所以,问题是我无法让按钮工作。这些按钮应该(例如)缩放 IKImageView 中的图像。(或者更确切地说,缩放视图)。它似乎没有工作。屏幕闪烁很多,但什么也没发生……我在缩放方法中放了一个 printf ,但它从来没有被调用过!所以我问了这个问题。

后来,我注意到我不是在尝试调用 zoom,而是在调用 doZoom doZoom 被调用。它没有缩放的原因是一个不相关的问题。

问题最终是我在每个事件上都将 setImage 发送到我的 IKImageView,这将视图重新设置为 1-1,右侧向上模式。一旦我拿出额外的 setImage 调用,事情就开始起作用了。

万一其他人都经历过这种情况,答案是我统治世界的狡猾计划:

第一步:别傻了。

第2步: ???????

第三步:称霸世界。

(如果我能掌握第 1 步,我也许就能弄清楚第 2 步是什么 B-)

于 2010-03-05T19:27:28.923 回答