从顶部调整NSWindow的大小

时间:2012-02-12 05:04:46

标签: cocoa resize frame nswindow

我想缩小一个NSWindow,通过改变框架的高度并让它从窗口顶部脱落。 我试过了:

NSRect frame = [mainWindow frame];
frame.origin.y += 71;
frame.size.height -= 71;
[mainWindow setFrame:frame display:YES animate:YES];

但是它使窗口从底部开始变小,而不是顶部。

1 个答案:

答案 0 :(得分:2)

在OS X上的cocoa中,原点位于屏幕的左下角。这意味着增加窗口的y位置会将其向上移动到屏幕上。由于您想要更改窗口的顶部,您希望底角保持在原位,这意味着您不应更改原点。只需更改高度就会使窗口从顶部缩小。

NSRect frame = [mainWindow frame];
frame.size.height -= 71;
[mainWindow setFrame:frame display:YES animate:YES];