私が持っている:
MyWindowController.h
MyWindowController.m
HistoryController.h
HistoryController.m
MyWindowController.h には、次のものがあります。
IBOutlet NSPanel* viewInvoice;
そして後で:
- (IBAction)viewInvoice:(NSNumber *)invoiceNumber;
プログラム全体でこのパネルを利用したいと思います。私の HistoryController.m には、次のものがあります。
- (IBAction)viewSelectedInvoice:(id)sender{
id viewInvoiceObject = [[MyWindowController alloc] init];
[viewInvoiceObject viewInvoice:[NSNumber numberWithInt:1]];
[viewInvoiceObject release];
}
これで、そのメソッドに正常にアクセスできます (一部の NSLog 呼び出しでこれが確認されます) が、実際に NSPanel を表示させることはまったくできません。そこからのコードの一部を次に示します。
- (IBAction)viewInvoice:(NSNumber *)invoiceNumber {
[viewSelectedInvoicePanel makeKeyAndOrderFront:viewSelectedInvoicePanel];
}
履歴ビューのボタンを FirstResponder アクション「viewInvoice」にリンクすると、パネルをポップアップさせることができますが、パラメーター (つまり請求書番号) を介して送信することはできないようです。