如何将NSPanel始终保持在NSScreen可见帧内

时间:2011-07-22 11:41:10

标签: objective-c cocoa positioning nswindow

我的应用中有一个浮动NSPanel,用户可以使用鼠标移动。我希望我的NSPanel始终在主屏幕中可见。我希望代码能够在屏幕边框的所有边上重新定位我的NSPanel,其原始宽度和高度。

谢谢,

1 个答案:

答案 0 :(得分:0)

子类NSPanel并覆盖帧相关方法。 setFrameOrigin: setFrame:display:以及其他人(请参阅documentation以找出所有方法)。还有很有前景的- (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen方法。