Попытка обнаружить код подтверждения в Xcode на x86_64 - PullRequest
0 голосов
/ 17 июля 2010

Я пытаюсь определить, когда код подтверждения вводится в текстовое поле, поэтому, если бы я хотел, чтобы кто-то набрал «это тест», он запустил бы следующий код:

system("say this is a test");

Но я продолжаю получать сообщение об ошибке "значение void не игнорируется, как должно быть". Я без понятия что это значит. Это то, что я имею до сих пор, но я думаю, что мне нужна другая помощь, в которой я объясню ниже код.

if ([SpecialCodeTextField setStringValue:[@"this is a test." stringValue]])
{
    system("say this is a test");
}

Но если бы я сделал что-то на iPhone SDK, я мог бы сделать что-то вроде:

if (MyTextField.text = @"this is a test")
{
    [firstView setHidden:YES];
    [secondView setHidden:NO];
}

Или что-то в этом роде. Так что же такое * MyTextField.text = @ "это тест" * в архитектуре x86_64 или при программировании для Mac? Я сделаю небольшое школьное уравнение для вас здесь:

MyTextField.text = @"this is a test"; - Изменение текста текстового поля на iPhone

в

???????????????????????????? Изменение текста текстового поля на Mac

1 Ответ

1 голос
/ 17 июля 2010

Прежде всего, загляните в документацию NSControl.В первом примере вы отправляете сообщение NSControl для установки строкового значения.(Кстати, когда вы используете нотацию @"Whatever String", вы неявно создаете статический объект NSString, поэтому нет необходимости вызывать stringValue).

Однако в документации для -setStringValue: говорится, чтосообщение возвращает void, но ваша структура if ожидает проверки любого значения.

Во втором примере ваш код выполняет две функции.1.) Он назначает текстовый член MyTextField @ «это тест».2.) Структура if проверяет текст на ноль.

Что именно вы хотите?Если вы хотите проверить NSTextField, если это не nil, вы должны сделать что-то вроде этого

if([specialCodeTextField stringValue]){
  ...
}

Если вы хотите проверить, если textValue в вашем NSTextField содержит "этотест "вы бы сделали что-то вроде этого:

if([[specialCodeTextField stringValue] isEqualToString:@"this is a test"]) {
  ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...