Изменить размер NSWindow сверху - PullRequest
3 голосов
/ 12 февраля 2012

Я хочу уменьшить NSWindow, изменив высоту фрейма и оторвавшись от верхней части окна.Я попытался:

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

Но это сделало окно меньше снизу, а не сверху.

1 Ответ

2 голосов
/ 12 февраля 2012

В какао на OS X источник находится в левом нижнем углу экрана.Это означает, что увеличение позиции y окна приведет к его перемещению вверх по экрану.Поскольку вы хотите изменить верхнюю часть окна, вы хотите, чтобы нижний угол оставался на месте, а это значит, что вы не должны менять свое происхождение.Простое изменение высоты приведет к уменьшению окна сверху.

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