Нужно дважды щелкнуть NSTextField, чтобы стать активным

У меня есть NSTextField, который по умолчанию не редактируется и отвечает первым.
Я хотел бы сделать NSTextField доступным для редактирования/активным, как только я нажму на него.
Я создал подкласс и использовал событие mousedown:

- (void)mouseDown:(NSEvent *)theEvent
{
    NSLog(@"link mouse down");

    [self setEditable:TRUE];
}

Однако мне нужно дважды щелкнуть NSTextFIeld, чтобы стать активным и редактируемым, но для каждого щелчка я могу правильно видеть NSLog «Мышь вниз».
Что я забыл сделать? Спасибо


person Laurent Crivello    schedule 12.03.2014    source источник
comment
Это абсолютно нормальное поведение, афаик. Это работает точно так же, как в Finder, когда вы нажимаете на имя файла, чтобы отредактировать его.   -  person l'L'l    schedule 13.03.2014
comment
Спасибо. А если бы я хотел добиться того, чего хочу, то каким был бы обходной путь?   -  person Laurent Crivello    schedule 13.03.2014
comment
Уверен, что это двойной щелчок, а не обычная задержка щелчка (опять же, как в Finder), которая активирует текстовое поле..?   -  person Jay    schedule 15.03.2014


Ответы (1)


В подклассе NSTextField попробуйте переопределить -acceptsFirstMouse: и возвращает YES. Однако избавьтесь от переопределения -mouseDown:.

person Joshua Nozzi    schedule 13.03.2014