Главная страница
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.021 c
15-1186466219
gn
2007-08-07 09:56
2007.09.09
Продвижение сайта.


6-1168954957
TWINc_
2007-01-16 16:42
2007.09.09
Прием буфера из сокета


15-1186596042
PEdee
2007-08-08 22:00
2007.09.09
Особенность компиляции в visual studio 2005


15-1186626194
Slider007
2007-08-09 06:23
2007.09.09
С днем рождения ! 9 августа 2007 четверг


2-1187180620
r.o.o.t
2007-08-15 16:23
2007.09.09
Передача параметров..