通过拖动背景移动 window (movableByWindowBackground)
Move window by dragging background (movableByWindowBackground)
我有一个 window,我希望用户能够通过拖动 window 内容(不仅仅是标题栏)中的任意位置来移动它。我知道这可以通过 NSWindow movableByWindowBackground
方法来完成,但是它本身似乎不起作用。
我 gather 可能需要覆盖 NSView mouseDownCanMoveWindow
。但是我不能轻易地对所有 parent 视图(拆分视图等)执行此操作。使它成为有纹理的 window 并没有帮助。毫不奇怪,子类化 NSWindow
以覆盖 isMovableByWindowBackground
也没有帮助。
是否真的有必要对 window 中的所有 parent 视图进行子类化才能使其工作?
在 OS X 10.11 上,将 NSWindow 的 属性 movableByWindowBackground
设置为 YES
有效。
不再需要为此行为进行子类化。
在 NSSplitView 中添加:
override var mouseDownCanMoveWindow: Bool {
return true
}
我有一个 window,我希望用户能够通过拖动 window 内容(不仅仅是标题栏)中的任意位置来移动它。我知道这可以通过 NSWindow movableByWindowBackground
方法来完成,但是它本身似乎不起作用。
我 gather 可能需要覆盖 NSView mouseDownCanMoveWindow
。但是我不能轻易地对所有 parent 视图(拆分视图等)执行此操作。使它成为有纹理的 window 并没有帮助。毫不奇怪,子类化 NSWindow
以覆盖 isMovableByWindowBackground
也没有帮助。
是否真的有必要对 window 中的所有 parent 视图进行子类化才能使其工作?
在 OS X 10.11 上,将 NSWindow 的 属性 movableByWindowBackground
设置为 YES
有效。
不再需要为此行为进行子类化。
在 NSSplitView 中添加:
override var mouseDownCanMoveWindow: Bool {
return true
}