我正在开发类似于本地画中画的功能。 我想移动这个窗口,但是无法移动,因为它没有标题栏(被隐藏了,并且 window.stylemask 是 fullSizeContentView),并且它完全填充了 webView。 所以,我不能只是点击标题栏并拖动来移动这个窗口。 P.S. 对不起我的英语不好,我希望目标清晰明了。
你可以创建一个webview的子类以捕获-mouseDown:事件,然后将NSEvent传递给-[NSWindow performWindowDragWithEvent:]。苹果提供了样例代码使用此技术在鼠标移动一定距离后开始窗口拖拽,同时仍可处理正常点击。如果您想要支持与webview的基本交互,这可能是一个不错的方法。(覆盖 -mouseDown: 看起来适用于WKWebView,但可能不适用于旧版WebView。这有点 hack,但您可以使用一个覆盖视图来替代捕获这些事件。)
window.stylemask
是fullSizeContentView
),而且它完全填充了 webView。所以我不能只是点击标题栏并拖动来移动这个窗口。你明白吗? - Роман Елизаров