|
|
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
Всем привет. Такая проблема: есть DBGrid, в одно из полей которого юзер вводит значение, после этого жмакает Enter. Мне нужно проверить, что он ввёл. Вопрос такой - как получить значение поля, которое отредактировано, но ещё не сохранено? Из датасета - не вариант, т.к. там его ещё нет - Post не сделан... DBGrid.SelectedField.AsString - тоже не работает, получаю всегда 0... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:45:15 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
Всем привет. Такая проблема: есть DBGrid, в одно из полей которого юзер вводит значение, после этого жмакает Enter. Мне нужно проверить, что он ввёл. Вопрос такой - как получить значение поля, которое отредактировано, но ещё не сохранено? Из датасета - не вариант, т.к. там его ещё нет - Post не сделан... DBGrid.SelectedField.AsString - тоже не работает, получаю всегда 0... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:46:41 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
но зато у поля есть событие OnValidate ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:47:52 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
alex_p_nВсем привет. Такая проблема: есть DBGrid, в одно из полей которого юзер вводит значение, после этого жмакает Enter. Мне нужно проверить, что он ввёл. Вопрос такой - как получить значение поля, которое отредактировано, но ещё не сохранено? Из датасета - не вариант, т.к. там его ещё нет - Post не сделан... DBGrid.SelectedField.AsString - тоже не работает, получаю всегда 0... RTFM: TField.OldValue, TField.NewValue ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:48:44 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
Например, в TField.OnSetText (). Или в TDataSet.OnBeforePost(). Или в TDataSource.OnDataChange(). ... Смотря, для чего тебе это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:54:17 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
schialex_p_nВсем привет. Такая проблема: есть DBGrid, в одно из полей которого юзер вводит значение, после этого жмакает Enter. Мне нужно проверить, что он ввёл. Вопрос такой - как получить значение поля, которое отредактировано, но ещё не сохранено? Из датасета - не вариант, т.к. там его ещё нет - Post не сделан... DBGrid.SelectedField.AsString - тоже не работает, получаю всегда 0... RTFM: TField.OldValue, TField.NewValue Там в эртээфеме еще есть кое-что: Note : the OldValue property is only usable when the data is accessed using a TClientDataSet component or cached updates is enabled. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 10:59:16 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
ЖышыНапример, в TField.OnSetText (). Или в TDataSet.OnBeforePost(). Или в TDataSource.OnDataChange(). ... Смотря, для чего тебе это. TDataSet.OnBeforePost() - не пойдёт ИМХО, т.к. событие OnBeforePost() происходит, когда Post() уже начался, но ещё не выполнился. А мне нужно сделать проверку ДО того, как будет выполене Post(), т.к.нужно липо постить то, что ввёл юзер, либо что-то другое (там кучерячвое условие, но смысл такой). Остальное будем проверять... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:40:39 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
wadman, На TField.NewValue ругается, что dataset not in cacheble edit mode ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:41:32 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
alex_p_nЖышыНапример, в TField.OnSetText (). Или в TDataSet.OnBeforePost(). Или в TDataSource.OnDataChange(). ... Смотря, для чего тебе это. TDataSet.OnBeforePost() - не пойдёт ИМХО, т.к. событие OnBeforePost() происходит, когда Post() уже начался, но ещё не выполнился. А мне нужно сделать проверку ДО того, как будет выполене Post(), т.к.нужно липо постить то, что ввёл юзер, либо что-то другое (там кучерячвое условие, но смысл такой). ... И что? Что-то мешает "остановить" Post()? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:45:01 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
ЖышыИ что? Что-то мешает "остановить" Post()? Ты имеешь в виду, что сделать пост, а onBefore проверять значение и, если оно не такое - подменить его? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:48:24 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
alex_p_nЖышыИ что? Что-то мешает "остановить" Post()? Ты имеешь в виду, что сделать пост, а onBefore проверять значение и, если оно не такое - подменить его? Да что угодно. Можешь подменить значение, можешь вообще остановить процесс Post(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:50:47 |
|
||
|
Получить значение редактируемого поля DBGrid
|
|||
|---|---|---|---|
|
#18+
если там происходит Exception, то Post не произойдет например Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2017, 11:57:14 |
|
||
|
|

start [/forum/topic.php?fid=58&gotonew=1&tid=2042037]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
177ms |
get topic data: |
12ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
2ms |
| others: | 201ms |
| total: | 490ms |

| 0 / 0 |
