押されたボタンに応じていくつかのウィンドウをロードするアプリケーションがあります。これらの 1 つを除くすべてが mainScreen (メイン ウィンドウが開いている画面) で開きます。そのうちの 1 つ (設定ウィンドウ) が最初の画面 (メニュー バーのある画面) で開きます。NSWindow が開く画面を変更する方法はありますか?
2661 次
2 に答える
5
私はトゥーティックの答えを得ることができませんでした。私がやったことは、NSWindow をサブクラス化し、constrainFrameRect:toScreen: をオーバーライドすることでした。これにより、アプリケーションの「メイン画面」に新しいウィンドウが自動的に開きます。
- (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen
{
AppDelegate *delegate = [[NSApplication sharedApplication] delegate];
return [super constrainFrameRect:frameRect toScreen:delegate.window.screen];
}
于 2012-05-03T17:20:03.120 に答える
1
なぜそのような振る舞いをするのかわかりませんが、NSScreen 引数を取る initWithFrame メソッドで変更できます。
于 2012-04-20T20:25:41.840 に答える