Используя автоматическое завершение в полях комбинированного списка
Поле комбинированного списка может выполнить автоматическое завершение, пытаясь завершить то, что пользователь вводит в текстовое поле с элементом из раскрывающегося списка. Если это делает, каждый раз, когда пользователь вводит символы в конце текстового поля, поле комбинированного списка вызывает метод NSComboBoxCell completedString:
. Если completedString:
возвращает строку, это более длинно, чем существующая строка, поле комбинированного списка заменяет существующую строку возвращаемой строкой и выбирает дополнительные символы. Если пользователь добавляет символы где-нибудь помимо конца строки или удаляет символы, поле комбинированного списка не пытается завершить его.
Реализация по умолчанию completedString:
первые проверки, использует ли поле комбинированного списка источник данных и отвечает ли источник данных на comboBox:completedString:
или comboBoxCell:completedString:
. Если так, возвраты ячейки поля комбинированного списка, что возвращаемое значение метода. Иначе, этот метод проходит через элементы поля комбинированного списка один за другим и возвращает первый элемент, запускающийся со строки, которую ввел пользователь. Это сравнение чувствительно к регистру.
Чтобы считать и установить, выполняет ли поле комбинированного списка завершение, использовать completes
и setCompletes:
. По умолчанию это не делает.