![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
1147 |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 205 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
В Dbgride есть столбцы, в в ячейках которых через запятую перечислены некоторые номера (например 56, 9,23,18). Столбец 1 и столбец 2. Данных в ячейках первого столбца всегода больши или равно ячейке воторого столбца. Нельзя ли сделать так чтобы количество номеров второго столбца вычиталось из первого? К примеру в одной из ячеек первого столбца содержится через запятую 7 элементов, во второй мы помещаем 5 элементов, и соответствующая ячейка третьего столбца нам показывает цифру 2?
Может вычисляемые поля Dbgrida подойдут? хотя у меня ничего не получилось с этим вариантом |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Нельзя ли сделать так чтобы количество номеров второго столбца вычиталось из первого? Можно... Итак:1) находим в Object Inspector-е источник данных для твоего DBGrid-а. Допустим, ADOTable2... ![]() 2) щелкаем правой кнопкой мыши, выбираем NewField, и заполняем все необходимые данные (обязательно выставить Calculated, а не то, что предлагается для таблицы по умолчанию !!!): ![]() , после чего в ДБГриде должен появиться еще один столбец... 3) для этой же самой таблицы находим событие OnCalcField: ![]() и пишем для него обработчик: procedure TForm1.ADOTable2CalcFields(DataSet: TDataSet);Если такой алгоритм подсчета не нравится - реализуй любой другой, главное - чтоб ADOTable2Y.Value на выходе из процедуры содержало то, что тебе надо... 4) Все, спасибо за внимание, запускаешь и проверяешь... |
![]() ![]() |
![]() |
Текстовая версия | 10.07.2025 5:52 |