Я хочу изменить цвет текста на «красный», когда активируется NSTextField. Все неактивные текстовые поля должны иметь «черный» текст.Изменить цвет текста активного и неактивного NSTextField
Используя метод getFirstResponder, я могу изменить цвет текста на «красный». Однако, когда текстовое поле теряет фокус, цвет текста остается «красным». Мне нужно, чтобы текст изменился на «черный», когда он является неактивным NSTextField. Я попробовал метод resignFirstResponder, но он не меняет цвет текста на «черный».
Вот мой код:
#import <Foundation/Foundation.h>
@interface MyTextField : NSTextField {
}
@end
и
#import "MyTextField.h"
@implementation MyTextField
- (BOOL)becomeFirstResponder {
if (![super becomeFirstResponder]) {
return NO;
} else {
[self setTextColor:[NSColor redColor]];
return YES;
}
}
- (BOOL)resignFirstResponder {
if (![super resignFirstResponder]) {
return NO;
} else {
[self setTextColor:[NSColor blackColor]];
return YES;
}
}
@end
Так что я попытался поместить код (ID) windowWillReturnFieldEditor в мой AppDelegate.m, но он, похоже, не работает. Я что-то упускаю? – wigging
Вы должны сделать AppDelegate делегатом окна, подключив их в редакторе xib. –
Вы имеете в виду перетаскивание из NSTextField в AppDelegate и выбор «делегата»? Если это так, я уже пробовал это. Или вы хотите перетащить из значка «окно» в док-станции на значок «AppDelegate» и выбрать «делегат»? – wigging