|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.04.2010, 12:15 | #1 |
Пользователь
Регистрация: 17.03.2010
Сообщений: 21
|
DBGrid и Enter
здравствуйте, подскажите пожалуйста... у меня в DBGrid выводится таблица БД Interbase, в этой таблице срабатывает триггер... мне нужно, чтобы когда я ввел данные, срабатывала запись в таблицу (.post) по нажатию на ENTER... а то приходится пользоваться PopupMenu, чтобы вызывать функцию записи
|
13.04.2010, 12:30 | #2 |
А может и не...
Участник клуба
Регистрация: 27.03.2010
Сообщений: 1,269
|
А что мешает обрабатывать событие OnKeyPress у DbGrid?
Перемешивай дело с бездельем и не сойдешь с ума...
|
13.04.2010, 12:48 | #3 |
Пользователь
Регистрация: 17.03.2010
Сообщений: 21
|
не мешает... а как здесь объявить, что при нажатии на Enter именно
procedure TMainForm.Grid_SUTKI_CGP1KeyPress(S ender: TObject; var Key: Char); |
13.04.2010, 12:54 | #4 |
А может и не...
Участник клуба
Регистрация: 27.03.2010
Сообщений: 1,269
|
Код:
Перемешивай дело с бездельем и не сойдешь с ума...
Последний раз редактировалось Grag; 13.04.2010 в 13:00. |
13.04.2010, 13:02 | #5 |
Пользователь
Регистрация: 17.03.2010
Сообщений: 21
|
мне нужно то как...
я заполняю первое и второе поле только, на третьем нажимаю ENTER (срабатывает .post) и у меня автоматически уже подсчитываются остальные поля... |
13.04.2010, 13:22 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А зачем тебе делать post так часто? Делай его при выходе из программы.
I'm learning to live...
|
13.04.2010, 14:11 | #7 |
Пользователь
Регистрация: 17.03.2010
Сообщений: 21
|
просто у меня на каждую запись срабатывает триггер... в самой базе
после этого добавляется еще запись, и также обрабатывается у меня запись прописана на PopupMenu DM.dataset_CGP1.Post; DM.dataset_CGP1.Close; DM.dataset_CGP1.ParamByName('datacg p1').AsDate:=MainWindow.DateTimePic ker1.Date; DM.dataset_CGP1.Open; вот, а мне тоже самое как то надо сделать на Enter и всё... я ввожу руками числа только в два поля, остальные поля у меня подсчитываются автоматически Последний раз редактировалось DaMadQuest; 13.04.2010 в 14:40. |
14.04.2010, 00:53 | #8 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Тогда может проверять по названию колонки или ее индексу, и если колонка совпадает, то разрешать необходимые действия?
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
14.04.2010, 12:52 | #9 |
Пользователь
Регистрация: 17.03.2010
Сообщений: 21
|
простите, еще вопрос возник походу...
мне в таблицу нельзя заносить данные за одну группу и за одну дату... как на это можно среагировать? то есть, я ввожу запись за определенную группу и текущую дату, НО за ту же самую группу сегодня я больше не могу ввести запись... по каким параметрам обращаться к таблице? |
14.04.2010, 13:05 | #10 |
Форумчанин
Регистрация: 06.03.2009
Сообщений: 583
|
Первое, что приходит в голову, это сделать список TStringList для групп за этот день и потом перед записью в базу проверять: Если группа и дата совпадают, то выводить сообщение о выборе другой группы иначе записать данные.
Второе, может организацию базы данных пересмотреть.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Enter | prod87 | Общие вопросы Delphi | 3 | 01.11.2009 19:13 |
Нажатие Enter | Screame | Microsoft Office Excel | 1 | 01.11.2009 17:02 |
Enter | PAVEL315 | Помощь студентам | 7 | 17.12.2007 20:41 |
Ctrl+Enter | kisska | Win Api | 3 | 22.08.2007 20:55 |
Enter | Slash | Общие вопросы Delphi | 2 | 24.03.2007 17:40 |