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

Вниз

DBGridEh проблемы перехода из режима редактирования   Найти похожие ветки 

 
DelphiLexx ©   (2007-05-14 15:39) [0]

В FIBDataSet"e есть поле Percent, в DBGridEh"e по этому полю происходит суммирование и эта сумма отображается в Footer"e. В FIBDataSet.AfterPost"e я использую процедуру CheckPercentSum. Данная функции проверяет сумму процентов: если она > 100, то колонка Footer"a подсвечивается красным, если < 100, то желтым, если = 100, то зеленым.

procedure
 TMyFrom.CheckPercentSum;
var
 Value: Double;
 ColumnEh: TColumnEh;
begin

 ColumnEh := dgrDDB.GetColumnByFieldName("PERCENT");
 if ColumnEh <> nil then
 begin
   Value := 0;
   try
     Value := StrToFloat(dgrDDB.GetFooterValue(0, ColumnEh));
   except
       Exit;
   end;
   if (Value > 100) then
   begin
     ColumnEh.Footer.Color := clMistakeMax;//красный
     ColumnEh.Footer.Font.Color := clBlack;
   end
   else if (Value < 100) then
   begin
     ColumnEh.Footer.Color := clMistakeMin; //желтый
     ColumnEh.Footer.Font.Color := clBlack;
   end
   else if (Value = 100)  then
   begin
     ColumnEh.Footer.Color := clFooterColor; //зеленый
     ColumnEh.Footer.Font.Color := clFooterFont;
   end;
 end;
end;

Проблема возникает в том, что когда я ввел в ячейку грида значение процента и затем нажмал клавишу Enter, ячейка все равно остается в режим редактирования, хотя должна была перевестись в режим не редактирования, и только повторное нажатие Enter спасает данную ситуацию. Как заставить грид сразу по нажатию на enter переходить из режима редактирования в режим не редактирования. DBGridEh.EditorMode := False не помогает


 
ANB ©   (2007-05-14 17:03) [1]

Режим редактирования не у грида, а у набора данных. Помнится, вроде как Post выполняется неявно только при перемещении по НД.
Если так мешает - перехвати в гриде кнопку энтер и делай пост явно (если нужен - для этого достаточно проверить состояние НД).


 
PEAKTOP ©   (2007-05-14 17:56) [2]

я что-то не увидел TDBGridEh.OnGetCellParams


 
DelphiLexx ©   (2007-05-14 18:32) [3]


> Если так мешает - перехвати в гриде кнопку энтер и делай
> пост явно (если нужен - для этого достаточно проверить состояние
> НД).

Да ставил я Post в ОnKeyPress когда нажимается Enter - не помагло


 
DelphiLexx ©   (2007-05-14 18:32) [4]


> я что-то не увидел TDBGridEh.OnGetCellParams

Что-то я не понял причем здесь OnGetCellParams


 
ANB ©   (2007-05-15 15:52) [5]


> Да ставил я Post в ОnKeyPress когда нажимается Enter - не
> помагло

Не верю. Скорее всего ОnKeyPress не отрабатывал.



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

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

Наверх




Память: 0.48 MB
Время: 0.015 c
15-1186466219
gn
2007-08-07 09:56
2007.09.09
Продвижение сайта.


15-1186664541
antonn
2007-08-09 17:02
2007.09.09
вопросик по Html


11-1159952232
Моторокер
2006-10-04 12:57
2007.09.09
Как лучше менять иконку в TKOLTrayIcon?


3-1178876828
Sairex
2007-05-11 13:47
2007.09.09
Локальна сеть и InterBase


15-1186701198
SerJaNT
2007-08-10 03:13
2007.09.09
PHP &amp; HTML: таблицу в 3 столбика