Кнопка очистки NSSearchField не реагирует на нажатие

Я пытаюсь очистить поле NSSearchField, нажав кнопку очистки справа. Я не могу нажать на него.

Вот запись экрана того, что происходит на моем конце:

введите здесь описание изображения

Я использовал следующий код, найденный RND:

[[[self.SrcFiled cell] cancelButtonCell] setAction:@selector(clearSearchField:)];
[[[self.SrcFiled cell] cancelButtonCell] setTarget:self];

Но это не работает; Я понятия не имею, как решить эту проблему. Пожалуйста, предложите, как это исправить.


person Nitin Gohel    schedule 21.05.2015    source источник
comment
Почему вы устанавливаете действие/цель? Он должен работать без каких-либо настроек...   -  person Renfei Song    schedule 21.05.2015
comment
по умолчанию это не отвечает, поэтому я пытаюсь использовать приведенный выше код. я не устанавливал никакого метода, но не устанавливая код выше, который также не отвечает   -  person Nitin Gohel    schedule 21.05.2015
comment
Июль 2021, Эта проблема все еще существует!!   -  person K_Mohit    schedule 07.07.2021


Ответы (2)


Это очень странно. Я получил решение, просто изменив прямоугольник TextBorderType на закругленный, и эта ошибка была исправлена, теперь я могу нажать кнопку очистки NSSearchFiled. и это работает гладко, как и ожидалось.

Старая кнопка очистки не отвечает:

введите здесь описание изображения

Теперь с откликом на кнопку очистки изменения:

введите здесь описание изображения

person Nitin Gohel    schedule 21.05.2015

У меня была точно такая же проблема, но моя граница уже была установлена, как показано в принятом ответе.

Я обнаружил, что мое переопределение события mouseDown блокирует это поведение.

- (void)mouseDown:(NSEvent *)theEvent
{
    NSLog(@"SearchField.h mouseDown");
}
person JonLord    schedule 30.08.2016
comment
Всегда звоните super с ними :) - person Ky Leggiero; 13.12.2016