Во-первых, вы можете прочитать Objective-C Язык программирования, чтобы изучить правильный синтаксис для отправки сообщений объектам, в том числе себе.
Вы получаете бессмысленное сообщение об ошибке, потому что вы написали (то, что в Objective-C) бессмысленный код. Корректное выражение сообщения Objective-C будет успешно скомпилировано и запущено, но я не думаю, что оно будет делать то, что вы от него ожидаете.
Видите ли (и это второе), comboBox:objectValueForItemAtIndex:
обычно не является сообщением, которое вы отправляете себе. Поле со списком отправляет это сообщение вам, когда вы являетесь его источником данных. Источники данных — это вариант шаблона делегирования, подробно описанный в Руководство по основам работы с какао.
(Вы можете отправить сообщение самому себе, и это может даже иметь смысл, если вы намеренно хотите пройти тот же путь извлечения значения объекта, что и поле со списком, но это не то, что вам нужно сделать, чтобы поле со списком работало.)
Каждый программист Cocoa должен прочитать документ Language и Cocoa Fundamentals вместе с Руководство по управлению памятью для Cocoa. Вы должны прочитать все три документа от начала до конца.
Решение вашей непосредственной проблемы заключается в том, чтобы объект, который отвечает на comboBox:objectValueForItemAtIndex:
, был источником данных поля со списком. Вы, вероятно, подключите это в IB, в том же пере, где вы создали поле со списком.
Если все это не имеет никакого смысла, то все, что я могу вам посоветовать, это снова прочитать эти документы. Они все объяснят.
Если вы действительно просто хотели спросить себя о значении объекта так же, как это делает поле со списком (т. Е. У вас уже есть поле со списком, и вы намереваетесь получить значение объекта таким же образом для какой-то другой цели), то вам все равно нужно чтобы прочитать документ по языку программирования Objective-C, чтобы узнать правильный синтаксис, чтобы отправить себе это сообщение.
person
Peter Hosey
schedule
27.10.2010