Я был в этом вопросе в течение последних нескольких дней, я хотел бы попросить вашей помощи.У меня есть кнопка NSPopUpButton, которую я хотел бы заполнить программно при запуске программы;На windowControllerDidLoadNib из подкласса NSPersistentDocument я пытался вызвать interfaceReady (из MYOtherClass) следующим образом
- (void)windowControllerDidLoadNib:(NSWindowController *)windowController {
[super windowControllerDidLoadNib:windowController];
MYOtherClass *brain = [[MYOtherClass alloc] init];
[brain interfaceReady];
}
, который определен в MYOtherClass.m (кстати, он объявлен в .h) следующим образом
- (void)interfaceReady {
NSLog(@"HI %d",(int)[self.thepop numberOfItems]);
[self.thepop removeAllItems];
NSLog(@"HI %d",(int)[self.thepop numberOfItems]);
}
обратите внимание, что эти сообщения NSLog были добавлены для Debug, чтобы понять, почему он не работает;в консоли оба сообщения показывают 0 (removeAllItems не меняет всплывающее окно).Я запускаю событие слишком рано?Делать что-то не так?Пожалуйста, дайте мне знать.
Спасибо за ваше время.
Примечание: я пытался добавить кнопку отладки в интерфейс (подключенный к методу IBAction), чтобы "вручную" заполнить всплывающее окнои это сработало, поэтому я думаю, что оно правильно подключено в конструкторе интерфейсов.Я все еще не знаю, почему вышеупомянутое не работает все же.