Я сейчас установить положение окна, который собирается открыть так:Установка Положение NSWindow перед отображением
-(void) setActiveNodeDialog:(ISKNodeDialogController *)dialog
{
if (activeNodeDialog)
[[activeNodeDialog window] close];
activeNodeDialog = dialog;
if (activeNodeDialog) {
[activeNodeDialog setMainWindowController:self];
NSRect windowRect = [[self window] frame];
NSRect dialogRect = [[activeNodeDialog window] frame];
NSPoint pos;
pos.x = windowRect.origin.x + windowRect.size.width - dialogRect.size.width - 10;
pos.y = windowRect.origin.y + 32;
[[activeNodeDialog window] setFrameOrigin:pos];
[[activeNodeDialog window] makeKeyAndOrderFront:nil];
}
}
Проблема, которая, что окно будет «прыгать», когда показано , И это несмотря на то, что я установил позицию, прежде чем показывать окно с помощью «makeKeyAndOrderFront». Окно - NSPanel *
. Кто-нибудь знает, как исправить прыжки?
Установка позиции в awakeFromNib не является опцией, потому что главный контроллер установлен позже.
Действительно, это вызывало эту проблему. Спасибо –
Слава богу. Этот ответ спас мою жизнь. – Jason