Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBLookup запретить прокрутку. [D6, IB6.x]


korvin ©   (2003-02-14 09:07:00) 

Проблема заключается в том, что использую DBLookup для того, чтобы пользователь мог выбрать из списка в таблице базы значение.
Однако некая привычка тянет того же пользователя нажать клавишу "вниз" для перехода к следующему полю "компоненту на форме". Эфетк есьественно таков: в DBLookup переход на следующую запись.
Вопрос: Как не дать ему совершать такую ошибку, но и выбирать он должен только из предложеных ему из списка значений (тоесть только из таблицы в БД). Возможно есть другой компонентик или у этого ДБЛокапа есть какое нить свойство обрубающее прокрутку с "клавы"??


ЮЮ   (2003-02-15 03:49:00) [1]

>просто обязаны придерживаться общих правил поведения, предусмотренных при работе под конкретной осью.

А разве ComboBox Адрес в Explorer-е ведёт себя так "дико" ?

Я убивал это в "зародыше" - в исходнике компонента :-)


Johnmen   (2003-02-14 14:40:00) [2]

А если юзер ошибется и попадет под машину, то отвечать тоже тебе ?
:)))))))
В общем, так : не городи огород и втолкуй своим юзерам, что они просто обязаны придерживаться общих правил поведения, предусмотренных при работе под конкретной осью.


korvin   (2003-02-14 14:19:00) [3]

Stas © (14.02.03 09:20)
Самое интересное, что типа таких вариантов я проработал (If key=Vk_Down then ...) всё, однако если даже удаётся передать фокус, то этот проклятый DBLookup успевает перейти на следующую запись ((((:

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


Stas   (2003-02-14 10:55:00) [4]

to Anatoly Podgoretsky По моему мы отклонились от темы, а на эту тему можно спорить сколь угодно.


Anatoly Podgoretsky   (2003-02-14 10:52:00) [5]

Ошибаешься, работаю с конца 80 годов, переводил из ДОС и далееЮ аключая написания программ. Нет проблем, есть плохие переводчики.


Stas   (2003-02-14 10:43:00) [6]

to Anatoly Podgoretsky
На поводу у пользователей конечно идти нельзя. Но видимо ты не сталкивался с ЮЗВЕРАМИ.


Anatoly Podgoretsky   (2003-02-14 09:50:00) [7]

Это означает одно, что программист слдуру пошел на поводу и сделал переход по полям стрелками и клавишейEnter.
Теперь борется с последствиями этого.
И теже самые пользователи ему предявдяют претензиии, почему у вас так, а в других местах нажатие клавиши Enter закрывает диалог, очнь неудобно и опасно у вас.

И не неадо ссылать на бестолковых пользователей, привыкают очень быстро и очень благодарны за стандартное поведение, это по моему у некоторых программистов с этим проблема, которым ничего не объяснишь и они не к чему не привыкнут.

Разруха начинается с головы, нет головы есть разруха.


Stas   (2003-02-14 09:32:00) [8]

to Johnmen
Есть такие ЮЗВЕРЫ, которым ничего не объяснишь и они не кчему не привыкнут.


Johnmen   (2003-02-14 09:21:00) [9]

Пользователи, по идее, уже давно должны были привыкнуть к манипуляциям с клавой в стиле виндов...
И это есть самый разумный путь решения....


Stas   (2003-02-14 09:20:00) [10]

В обработчике своего LookUp на событие OnKeyDown впиши if key=40 then MyComponent.SetFocus
Где MyComponent это компонент которому передать управление.


Наверх

Титульная страница Поиск, карта сайта Написать письмо