![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перемещение по записям в DBGrid [D7]
Студент1 © (2004-04-01 11:31:00)Здравствуйте!!! Подскажите, пожалуйста, как сделать, что бы при редактировании/добавлении записи в DBGrid нельзя было перемещаться по записям вверх и вниз (ни клавой, ни мышкой)???
Юзер (2004-04-01 15:38:00) [1]> [12] сам автор (01.04.04 15:26)
Все кнопки не заблокируешь! Заблокируешь - так мы мышь переключимся! Или еще три кнопки волшебные знаем, но не скажем, а то вдруг заблокируешь! Хоть тут и говорят, что нельзя, но мы им не верим! Ты все могешь!
PS
Нашу песню не задушишь, не убьешь, не убьешь, не убьешь!
сам автор (2004-04-01 15:26:00) [2]перемещаться по записям вверх и вниз (ни клавой, ни мышкой)???
А может просто сделать так чтобы кроме при нажатии еск программа не выходила из ре6жима редактирования (т.е. заблокировать остальные кнопки)
Курдль (2004-04-01 15:21:00) [3]TATIANA, браво!
Нефиг злобным юзерАм столько свободы давать!
TATIANA (2004-04-01 15:11:00) [4]Я не гений в программироваии , и потому во избежании ошибок при редактировании и удалении делаю модальную форму ввода , редактирования , изменения . Опыт работы многих лет с пользователями , а уследить бывает очень сложно , все ситуации не предусмотришь . Не ленитесь , все окупится .
Anatoly Podgoretsky (2004-04-01 13:40:00) [5]Неблагородное это дело - телепатия
KSergey (2004-04-01 13:34:00) [6]> [6] Соловьев © (01.04.04 13:22)
> и как ты сохранишь тогда? :)
Как верно заметил АП - это и не спрашивалось ;)
Да, к стати, отменить редактирование/вставку такой код, пожалуй, не запретит... Надо еще и в BeforeCancel отходные пути перекрыть аналогичным способом ;)
Рискну предположить, что автор таки разрешит сохранение по какому-то условию...
Anatoly Podgoretsky (2004-04-01 13:24:00) [7]Да никак, у него по определению не предусмотрен выход из режима редактирования, по своему желанию.
Вообще в таких случаях надо просто редатктировать в модальной форме.
Соловьев (2004-04-01 13:22:00) [8]
> if (DataSet1.State = dsEdit) OR (DataSet1.State = dsInsert)
> then Abort;
и как ты сохранишь тогда? :)
KSergey (2004-04-01 13:16:00) [9]> [4] Соловьев © (01.04.04 12:17)
> OnKeyDown - лови 40 и 38 и решай что делать.
А если мы мышью на очередной контрол ткну?
Я бы наверное на BeforePost DataSet'а вписал что-то такое:
if (DataSet1.State = dsEdit) OR (DataSet1.State = dsInsert) then Abort;
Вот только как же быть бедному пользователю, если ему таки захочется выйти и программы, а он так неосмотрительно начал редактирование? Вы хоть предупредите о такой подлянке ;)
Соловьев (2004-04-01 12:17:00) [10]OnKeyDown - лови 40 и 38 и решай что делать.
Студент1 (2004-04-01 12:15:00) [11]<<< При редактировании и нельзя, можно после, сразу как выйдет из режима редактирования.
А у меня перемещается и выходит из режима редатирования!!! А мне этого не надо!!!
Курдль (2004-04-01 11:49:00) [12]DataSet.DisableControls
Anatoly Podgoretsky (2004-04-01 11:41:00) [13]При редактировании и нельзя, можно после, сразу как выйдет из режима редактирования.