powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как очистить ComboBox ?
7 сообщений из 7, страница 1 из 1
Как очистить ComboBox ?
    #32727467
Atanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Обычно при вводе в поле со списком текста, к-рого нет в списке, и затем переходя курсором на другое поле, ACCESS отказывается покинуть ComboBox до тех пор, пока не будет введен текст, имеющийся в списке, либо нажата ESC.

Как добиться, чтобы после перехода на другой элемент управления ComboBox остался пустым и не давал бы этих реакций, т.е., какую для этого команду надо написать в коде VBA для события “on NotInList” ? Какая команда в VBA имитирует нажатие ESC для поля со списком?
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32727475
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Свойство комбика "Ограничиться списком" = нет
2. в событии пишем примерно такой код
Код: plaintext
if isnull(me.Combo1) then me.Combo1 = null
или просто
Код: plaintext
me.combo1 = me.combo1

Должно сработать :)

ЗЫ: не проверял
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32727718
Atanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Свойство комбика "Ограничиться списком" = нет

ACCESS на это отвечает:

Microsoft Access can't set the LimitToList property to No right now.
The first visible column, which is determined by the ColumnWidths property, isn't equal to the bound column.
Adjust the ColumnWidths property first, and then set the LimitToList property.

Но если bound column слелать 1-ой видимой колонкой, то в комбике будет не список фамилий, а значения ID.
Каков выход?
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32728002
Фотография paparome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Читал справку - много думал:
1. событие OnNotInList возникает только если свойство "Ограничиться списком" = Да
2. Не смог грамотно выйти из списка - не хотит он из него выходить
3. От окна с ошибкой избавился
4. Пустое значение в комбик вбил

Код: plaintext
1.
2.
3.
Private Sub ПолеСоСписком0_NotInList(NewData As String, Response As Integer)
    Response = acDataErrContinue
    ПолеСоСписком0 = Null
End Sub
Вдруг поможет :)
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32728103
Atanor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, чуточку помогло.

Благодаря
ПолеСоСписком0 = Null
при переходе на другой контрол комбик покинуть уже получается, однако перед этим раскрывается выпадающий список. Хорошо, если бы этого не было, поскольку курсор на новый контрол приходится устанавливать повторно.

Нет ли идей, какая команда имитирует нажатие ESC ?
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32728109
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AtanorНет ли идей, какая команда имитирует нажатие ESC ?

me.полесосписком0.undo

Но переходить на другое поле все равно придется еще раз. Можно самому написать замену NotInList (в BeforeUpdate, отключив при этом "ограничившись списком"), но это не сильно удобно.
...
Рейтинг: 0 / 0
Как очистить ComboBox ?
    #32728469
Iskander68
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Провел опыты. Если переходить табуляцией, то никакого Эскейпа нажимать не нужно. :-)
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как очистить ComboBox ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]