次のように、プログラムでウィンドウをロードします。
OddsWindowController *const controller = [[OddsWindowController alloc] initWithWindowNibName:@"OddsWindow"];
NSWindowController のサブクラスである OddsWindowController で、自己ログを記録しています。
- (IBAction)showOdds:(id)sender {
NSLog(@"self = %@", self);
}
- (void)windowDidLoad {
NSLog(@"self = %@", self);
}
2 つの異なるログ ステートメントは、self に対して異なる値を返します。これは、NSWindowController の 2 つのインスタンスがあることを意味します。何が原因でしょうか? どうすればこれを止めることができますか?