Во-первых, вы можете прочитать Язык программирования Objective-C , чтобы узнать правильный синтаксис для отправки сообщений объектам, включая вас.
Вы получаете бессмысленное сообщение об ошибке, потому что вынаписал (что в Objective-C) бессмысленный код.Допустимое выражение сообщения Objective-C будет успешно скомпилировано и выполнено, но я не думаю, что оно выполнит то, что вы ожидаете.
Видите ли (и это второе), comboBox:objectValueForItemAtIndex:
обычно это не сообщение, которое вы отправляете себе. Поле со списком отправляет это сообщение вам, когда вы являетесь его источником данных.Источники данных - это вариант шаблона делегата, который подробно описан в Руководстве по основам какао .
(Вы можете отправить сообщение себе,и это может даже иметь смысл сделать, если вы намеренно хотите пройти по тому же пути извлечения объекта-значения, что и поле со списком, но это не то, что вам нужно, чтобы заставить поле со списком работать.)
Документ «Язык» и документ «Основы какао» являются необходимыми для чтения всеми программистами Какао, а также Руководство по управлению памятью для какао .Вы должны прочитать все три документа от начала до конца.
Решение вашей непосредственной проблемы состоит в том, чтобы объект, который отвечает на comboBox:objectValueForItemAtIndex:
, был источником данных поля со списком.Вы, вероятно, подключите это в IB, в том же самом месте, где вы создали поле со списком.
Если ничего из этого не имеет смысла, то все, что я могу вам предложить, это снова прочитать эти документы.Они объяснят все.
Если вы действительно просто хотели спросить себя о значении объекта так же, как это делает поле со списком (то есть у вас уже работает поле со списком и вы намерены получить значение объекта таким жедля какой-то другой цели), тогда вам все еще нужно прочитать документ языка программирования Objective-C, чтобы узнать правильный синтаксис для отправки себе этого сообщения.