从代码发送MouseEvent到NSView(WebView)

时间:2010-10-06 14:41:35

标签: cocoa nsview nsevent

我正在尝试将mouseevent(MouseClick或RightMouseClick)发送到NSView ...在我的情况下是一个包​​含已加载网站的WebView。我想在链接上点击一些点击等。如何创建NSEvent并将其发送到WebView以执行点击?

非常感谢

ksman

1 个答案:

答案 0 :(得分:2)

这有点晚了;也许你找到了它,也许你没有找到它。我最近不得不弄明白这一点,所以我会在这里记录下来并希望能帮助别人。

NSPoint where;
where.x = x;
where.y = y;
NSView* resp = [someView hitTest:where];
NSEventType evtType = NSLeftMouseDown;
NSEvent *mouseEvent = [NSEvent mouseEventWithType:evtType
                                         location:where
                                    modifierFlags:nil
                                        timestamp:GetCurrentEventTime()
                                     windowNumber:0
                                          context:[o->helper context]
                                      eventNumber:nil
                                       clickCount:1 
                                         pressure:nil];
[resp mouseDown:mouseEvent];