超出NSWindow的NSView

4
我有一个NSWindow,基本上,我想在用户悬停在NSWindow上时弹出一个超出NSWindow边界的NSWindow。但是每次尝试这样做时,由于NSView位于NSWindow边界之外,它会被裁剪掉。下面是我想要实现的图片: enter image description here
2个回答

7
您需要创建一个无边框的 NSWindow,足够大以容纳您的视图,并使该窗口成为其附加到的主窗口的子窗口。要将窗口作为另一个窗口的子窗口,您可以使用 NSWindow 的 addChildWindow:ordered: 方法。
子窗口附加在父窗口上,并且当父窗口移动时会随其移动。如果您只是打开一个新窗口而没有使它成为子窗口,则在移动其他窗口时它将被“落下”。
要制作无边框窗口,请将 NSBorderlessWindowMask 作为 styleMask 传递给 NSWindow 的 initWithContentRect:styleMask:backing:defer: 方法。

2
最简单的方法是创建另一个没有边框的NSWindow,并将按钮放在其中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接