Xcode, как использовать IBOutlet для маркировки при использовании в функции

У меня есть связь с моим лейблом:

@property (weak) IBOutlet NSTextField *scoreBox;

правильно, и я пытаюсь получить к нему доступ так:

void namedfunction(button) {

if (button == button) {
score = score + 100;
[scoreBox setIntValue:score];
// ^ error
}
}

и я получаю эту ошибку:

AppDelegate.m: 52: 10: использование необъявленного идентификатора «ScoreBox»

Что я делаю неправильно?

4

Решение

использование

[_scoreBox setIntValue:score];

Или же

[self.scoreBox setIntValue:score];

*Также убедитесь, что вы сравниваете ту же кнопку, что и: button==button,

РЕДАКТИРОВАТЬ 2:

Как ваш код:

int perus(int nappi){

}

Измените это на:

- (NSInteger *)perus:(NSInteger *)nappi{
//all should do inside, rest are OK.
}


РЕДАКТИРОВАТЬ:

Я не уверен насчет следующего как нашел это Вот

*Я бы посоветовал вам переключиться на метод obj-c вместо использования функции C для такого рода вещей.

Функция C — это просто блок кода, ни к чему не привязанный
остальное. Ваша переменная экземпляра прикреплена к каждому объекту Controller.
Поэтому, когда вы вызываете printChatter (), нет способа узнать, какой
экземпляр контроллера, который вы хотите использовать. Вы можете добавить объект
переменная для вашей функции:

void namedfunction(const void *button, const void *appDele){
NSTextField *myButton=[appDele scoreBox];
....
}

5

Другие решения

Других решений пока нет …

А ты уже прошел курс программирования? Супер скидка!
Прокачать скилл $$$
×