Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.02;
Скачать: CL | DM;

Вниз

DbGrid   Найти похожие ветки 

 
Catche   (2003-05-13 08:22) [0]

У меня есть dbGrid с численными данными, включено MultiSelected, как сделать подсчет суммы при выделении более одной строчки в таблице при момощи клавы, либо мышки, и результат кинуть в СтатусБар (По аналогии MS Excel)?


 
ЮЮ ©   (2003-05-13 09:02) [1]

Если по аналогии с MS Excel, то надо использовать не DBGrid, а StringGrid или DrawGrid + обект в памяти, т.к. DBGrid имеет понятие лишь о видимой части датасета да и не информирует о выделении/снятии выделения. Тут нужен более крутой DBGrid, т.к. эту функциональность лучше заложить во-внутрь, а не пытаться отловить снаружи.


 
VAleksey ©   (2003-05-13 09:10) [2]

В момент, когда тебе нужно посчитать сумму делаешь следующее:
1) Отключаешь визуальные контролы (DataSet.DisableControls)
2) Запоминаешь текущее местоположение (DataSet.GetBookmark)
3) Проходишь по выделенным записям грида считая сумму. (см. пример в хелпе. Св-во SelectedRows.)
4) Возвращаешся на закладку полученную в пункте 2 (DataSet.GotoBookmark(...))
5) Включаешь визуальные контролы.(DataSet.EnableControls)


 
ЮЮ ©   (2003-05-13 09:15) [3]

>VAleksey © (13.05.03 09:10)
>В момент, когда тебе нужно посчитать сумму делаешь следующее:

А посколько этот момент не определён однозначно, то прицепить надо на onMouseXXX, onKeyXXX, т.е. при любом двищении по гриду бегать по DataSetу



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

Текущий архив: 2003.06.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
3-2737
Catche
2003-05-13 08:22
2003.06.02
DbGrid


3-2762
saff
2003-05-13 11:40
2003.06.02
SQL


4-3211
Grrey
2003-04-02 12:56
2003.06.02
Как определить Handle родительского окна для контрола


3-2828
Viktor
2003-05-15 16:12
2003.06.02
Повторно не выполняется запрос


7-3186
Павел
2003-04-02 07:25
2003.06.02
Иконки