Неудобство при редактировании в tDropdownListEditDB [решено]

Вопросы программирования и использования MSEide + MSEgui.

Модератор: Модераторы

Ответить
t-ea
новенький
Сообщения: 98
Зарегистрирован: 22.09.2006 00:22:34

Неудобство при редактировании в tDropdownListEditDB [решено]

Сообщение t-ea »

В базе есть текстовое поле содержание которого достаточно часто повторяется у различных записей. Для его редактирования на форме имеется tDropdownListEditDB со следующими опциями: deo_autodropdown, deo_keydropdown установлены в True, остальные — False.
Список возможных значений выпадающего списка формируется из базы и содержит уникальные строки (через DISTINCT).

Цель была стандартная: при попытке что-то внести в это поле, либо строка выбирается из списка, либо вносится новое значение.

Но если в базу уже попало более длинное значение, то новую строку туда вставить становится невозможно.

Пример: В базе есть строки — '123' и '12345'. При внесении в строку ввода значения '1234' курсор в выпадающем списке автоматически становится на '12345' и при закрытии списка, соответственно, введённое заменяется.

Что и где надо включить/переключить или как указать в таком случае, что значение из выпадающего списка брать не надо?
Последний раз редактировалось t-ea 27.06.2013 13:13:30, всего редактировалось 1 раз.
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

А чего нужно добиться ? Запись в датесет только после конфирмации ? Каким оборазом она (конфирмация) должна инициироваться ?
Или фильтровать на уже имеющиеся в списке значения ?
t-ea
новенький
Сообщения: 98
Зарегистрирован: 22.09.2006 00:22:34

Сообщение t-ea »

Надо чтобы в строке ввода осталось '1234'.

На tDropdownListEdit (без *db), этого можно добиться, просто закрыв список. В *db при закрытии списка происходит также замена '1234' на '12345'.
Вложения
dropdown.png
dropdown.png (682 байт) 14507 просмотров
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Хм..Похоже что нужно чтобы в БД писалось либо новое значение ли фуллматч (а не партиал). Спросил у Мартина в конфе :

Te-a has encountered a problem:

tDropdownListEditDB with deo_autodropdown=deo_keydropdown=True

For instance, after loading from DB, it contains values of "123" & "12345". While typing (or copying-pasting) "1234", the selection is automatically adjusted to "12345" which is taken as the value upon closing the dropdown. As the result, the dropdown still has "123" & "12345"only, "1234" seems to be unable to add to the value list.
Q: how to allow adding "1234" to the list ?

ждем ответа.

Добавлено спустя 3 часа 37 минут 46 секунд:
Похоже,что Вы натолкнулись на реальный баг, который теперь вроде бы исправлен в "транке":
Please try again with git master 3fe27c7cb6077b2f5a21dd143cd38c09c74ba5cc.

Плиз отрапортуйте.
t-ea
новенький
Сообщения: 98
Зарегистрирован: 22.09.2006 00:22:34

Сообщение t-ea »

Там не зарегистрирован, поэтому

Рапортую здесь: Работает!
Ответить