缩放NSBorderlessWindowMask样式NSWindow

时间:2011-11-10 03:20:01

标签: objective-c cocoa nswindow resize zooming

我使用NSWindow设置NSBorderlessWindowMask样式,需要调整大小,但我希望它可以缩放两种尺寸。根据Apple文档,当使用NSWindow的 - performZoom方法时,不支持调整大小的窗口会发出蜂鸣声。

是否有办法使用内置逻辑使用内置逻辑使用窗口的最大尺寸,屏幕限制约束以及恢复到原始窗口位置预缩放来实际缩放窗口,可以在不指定{{ 1}}?

1 个答案:

答案 0 :(得分:0)

您无法使用内置逻辑使用窗口的最大大小,屏幕限制约束以及还原到原始窗口位置预缩放来调整无边框窗口的大小,可以在不指定NSResizableWindowMask的情况下使用。

如果要切换无边框窗口的大小,可以像这样使用setFrame:display:方法 -

NSRect window = [window frame];

if (window.size.width == 50) {

    [window setFrame:NSMakeRect(50, 50, 500, 500) display:NO];
}
else {
    [window setFrame:NSMakeRect(50, 50, 50, 50) display:NO];
}