Прежде всего, я должен сделать это без IB и без использования продвинутых методов Objective-C, таких как KVO.Подтвердить десятичные значения max/min в NSTextField
Моя проблема связана с простым фактом, что я не могу найти способ получить все новое строковое значение текстового поля.
Я попытался с помощью функции делегата:
- (BOOL)textView:(NSTextView *)aTextView shouldChangeTextInRange:(NSRange)affectedCharRange replacementString:(NSString *)replacementString
, но это не дает мне только строка замены не полную строку, мне нужно для проверки. Я могу позже использовать текст
Я нашел
- (void)textDidChange:(NSNotification *)aNotification
- (void)controlTextDidChange:(NSNotification *)aNotification
, но когда я получаю это называет это уже поздно, и последнее содержимое текстового поля уже нет. Итак, каков наилучший способ справиться с этим?
И да, я прочитал binding NSTextField to NSNumber, но это не дает мне никаких подсказок, как решить мою проблему.
Все, что мне нужно, это простая функция тестирования «- BOOL» acceptNewValue (NSString string). Почему все так сложно, что Cocoa начинает ощущаться как MFC.
Спасибо, что решает проблему. Но у меня есть новый http://stackoverflow.com/questions/3605571/how-to-set-nsformatter-to-accept-negative-integer-values – Lothar