使WebKit中的WebView可在Cocoa中通过鼠标拖动
我想创建一种桌面小部件,并希望它能够很容易地通过HTML/CSS进行风格设计。我决定使用使WebKit中的WebView可在Cocoa中通过鼠标拖动,cocoa,webkit,webview,Cocoa,Webkit,Webview,我想创建一种桌面小部件,并希望它能够很容易地通过HTML/CSS进行风格设计。我决定使用WebView完成这项任务 我有一个无边界的NSWindow,里面有一个WebView。我想让它可以用鼠标拖动(因为任何普通窗口都可以用它的标题拖动,但只需单击我的WebView中的任意位置即可)。试图对WebView进行子类化,并覆盖mouseDown和mouseDragged事件,但没有成功(原因很明显) 当然,我可以在WebView上面创建一个透明视图来解决这个问题,但我真的想找到一个更好的方法。有人知
WebView
完成这项任务
我有一个无边界的NSWindow
,里面有一个WebView
。我想让它可以用鼠标拖动(因为任何普通窗口都可以用它的标题拖动,但只需单击我的WebView
中的任意位置即可)。试图对WebView
进行子类化,并覆盖mouseDown
和mouseDragged
事件,但没有成功(原因很明显)
当然,我可以在
WebView
上面创建一个透明视图来解决这个问题,但我真的想找到一个更好的方法。有人知道如何做到这一点吗?通过覆盖父类NSWindow
子类中的-(void)sendEvent:
方法解决了问题,如下所示:
//Overriding mouse events
- (void)sendEvent:(NSEvent *)theEvent
{
if ([theEvent type] == NSLeftMouseDown)
{
[self mouseDown:theEvent];
}
else if ([theEvent type] == NSLeftMouseDragged)
{
[self mouseDragged:theEvent];
}
else
{
[super sendEvent:theEvent];
}
}
我想这是最好的解决办法