Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
6-3028
Valeris
2003-03-26 13:54
2003.06.02
Проверка подключения terminal клиента к серверу


3-2827
the great man
2003-05-15 12:24
2003.06.02
работа с *.dbf без BDE администратора


1-2912
delpher_gray
2003-05-22 20:39
2003.06.02
Как сделать копию экрана, уменьшеную в два раза !?


6-3038
Карелин Артем
2003-04-03 07:47
2003.06.02
Правила набора номера.


1-2864
CABBA
2003-05-22 12:16
2003.06.02
Как делать свои формы?




   Наверх