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

Вниз

Раскрашивание DBGridEh   Найти похожие ветки 

 
Ega23 ©   (2006-01-18 11:15) [0]

есть вот такой простенький код:

procedure TFMain.dbgAgeCategoriesGetCellParams(Sender: TObject;
 Column: TColumnEh; AFont: TFont; var Background: TColor;
 State: TGridDrawState);
var
ds:TDataSet;
begin
 ds:=DMClient.aqAgeCategories;

 AFont.Name:=ds.FieldByName("FontNam").AsString;
 AFont.Size:=ds.FieldByName("FontSize").AsInteger;
 AFont.Style:=SetFontStyle(ds.FieldByName("FontStyle").AsInteger);

 if (gdSelected in State) or (gdFocused in State) then
  begin // Âûäåëåíèå
   Background:=ds.FieldByName("SelectColor").AsInteger;
   AFont.Color:=ds.FieldByName("SelectFontColor").AsInteger;
  end
 else
  begin // Íåò âûäåëåíèÿ
   Background:=ds.FieldByName("BackgrndColor").AsInteger;
   AFont.Color:=ds.FieldByName("FontColor").AsInteger;
  end;
end;



Всё отлично и правильно отрисовывается, пока ячейка не становится выделенной (а точнее - не получает фокус). После получения фокуса Background один хрен становится цвета clHighlight, а цвет фонта - clHighlightText.
Неужели их надо менять на момент рисования???


 
Aleksandr.   (2006-01-18 11:29) [1]

Для выделенного у него зашит цвет. В общем-то, логично, так что лезь в исходник.


 
Ega23 ©   (2006-01-18 11:31) [2]


> В общем-то, логично,


совсем не логично.



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

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

Наверх




Память: 0.47 MB
Время: 0.047 c
2-1138499061
einstein
2006-01-29 04:44
2006.02.19
Функция Shellexecute()


2-1138815535
korban
2006-02-01 20:38
2006.02.19
Работа с Listbox


15-1138265524
AlexD
2006-01-26 11:52
2006.02.19
Windows XP


15-1138183309
GRIZME
2006-01-25 13:01
2006.02.19
ATI Radeon 9600 Pro


15-1138641510
palva
2006-01-30 20:18
2006.02.19
Какие разные эти процессоры и ОС !