Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];

Вниз

Как определить, что пользователь изменил данные в dbGrid?   Найти похожие ветки 

 
Ильдар   (2002-12-09 08:02) [0]

Требуется "на лету" проводить вычисления по строке после изменения пользователем данных в любом из полей dbGrid. Как определить, что значение поля изменено и какое поле изменено?


 
Виталий Панасенко   (2002-12-09 09:35) [1]

По-моему, проще все пересчитывать по новому, чем вычислять, какое поле изменилось. Ведь для вычисления используются заведомо известные поля и смысла в "Как определить, что значение поля изменено и какое поле изменено?", кажись, нет. Это можно делать как в вычисляемых полях, так и обработчике BeforePost.


 
passm   (2002-12-09 11:21) [2]

Ильдар (09.12.02 08:02)> TField.OnChange(Sender: TField);


 
Ильдар   (2002-12-09 11:50) [3]

В том то и дело, что алгоритм вычислений зависит от того, какое поле изменилось!


 
passm   (2002-12-09 11:58) [4]

Ильдар (09.12.02 11:50)> Что мешает ориентироваться на Sender?


 
Ильдар   (2002-12-09 13:55) [5]

C TField.OnChange(Sender: TField) есть проблема. При вычислениях будут изменяться поля, для которых начнёт срабатывать событие OnChange, которое в свою очередь породит новое вычисление и т.д. В общем получится нечто вроде бесконечной рекурсии.


 
MMF   (2002-12-09 14:02) [6]

> Ильдар (09.12.02 13:55)
Все так и делают. Никакой рекурсии не будет, если правильно написать.


 
roottim   (2002-12-09 14:38) [7]

вообще для этого предназначены Calculate поля, и в OnCalcField пишут вычисления. см. HELP


 
MMF   (2002-12-09 14:43) [8]

>roottim (09.12.02 14:38)
А как насчет подстановки значения поля по-умолчанию, например цены при выборе поля Товар.


 
Виталий Панасенко   (2002-12-09 18:20) [9]

>MMF (09.12.02 14:43)
Для этого существует событие OnNewRecord



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.57 MB
Время: 0.035 c
1-99055
don
2002-12-19 13:39
2002.12.30
SendMessage, PostMessage?


3-99017
arnold
2002-12-11 08:58
2002.12.30
Сравнение двух DBF


14-99294
Sergy
2002-12-09 10:25
2002.12.30
Update Park for delphi 7


14-99256
Ketmar
2002-12-08 14:13
2002.12.30
multiple read, exclusive write


8-99201
****
2002-09-10 12:45
2002.12.30
TCanvas





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский