如何让NSWindow阻止其他Windows?

时间:2010-11-01 17:54:39

标签: objective-c cocoa macos nswindow menubar

我正在寻找一种方法来建立一个NSWindow,它可以阻止其他NSWindows,就像菜单栏一样。我的意思是:无法在菜单栏上拖动窗口。 这种行为对我自己的NSWindow来说是否可以实现?

提前致谢
毕扬

2 个答案:

答案 0 :(得分:0)

NSWindow的拖动行为会自动阻止窗口进入菜单栏 - 因为它们不应该。如果您有一些特殊情况,则可以覆盖标准拖动行为。但在抛弃HIG规定的标准功能之前要仔细考虑。

此外,无法将菜单栏上的窗口拖过(而不是下的),除非它也超过其他所有内容,因为菜单栏通常是在每隔一个窗口之上。

答案 1 :(得分:0)

我偶然发现this问题。他们说可以使用Accessibility API或Quartz Window Services移动其他窗口。 我不能只读出其他窗口的位置并移动它们,这样它们就不会与我的窗户发生碰撞吗?也许是0.1秒引发的。计时器?