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

Вниз

Прорисовка в DBGrid   Найти похожие ветки 

 
ggg   (2004-12-08 13:34) [0]

Написал обработчик для OnDrawDataCell. Вроде работает нормально, ячейки перерисовываются нужным образом, но если убрать несколько колонок из DBGrid-a, в эту процедуру вообще перестает входить (я пошагово выполнял). Почему?

procedure TMainForm.DBGrid2DrawDataCell(Sender: TObject;
 const Rect: TRect; Field: TField; State: TGridDrawState);
begin
 if AccTable.FieldByName("Prim").AsBoolean then
   DBGrid2.Canvas.Font.Style := DBGrid2.Canvas.Font.Style + [fsBold];
 DBGrid2.DefaultDrawDataCell(Rect, Field, State);
 if (Field.FieldName="Prim") and (AccTable.RecordCount>0) then
   if Field.Value=true then begin
     DBGrid2.Canvas.Brush.Color:= clWhite;
     DBGrid2.Canvas.FillRect(Rect);
     DBGrid2.Canvas.TextOut(Rect.Left+2,Rect.Top+2,"Да")
   end else begin
     DBGrid2.Canvas.Brush.Color:= clWhite;
     DBGrid2.Canvas.FillRect(Rect);
     DBGrid2.Canvas.TextOut(Rect.Left+2,Rect.Top+2,"Нет")
   end;
end;


 
ggg   (2004-12-08 17:17) [1]

никто не знает, что ли?


 
KSergey ©   (2004-12-09 08:46) [2]

На счет "перестает совсем заходить" - есть большие сомнения. Скорее - просто убираются те колонки, на который у вас навешана проверка?

А вообще - читните тут. Что-то сказать по конкретному случаю на основании приведенной информации я не берусь.

http://www.delphikingdom.com/helloworld/dbgridcolor.htm
http://www.delphikingdom.com/helloworld/mergegrid.htm
http://www.delphikingdom.com/helloworld/nogrid.htm
http://www.delphikingdom.com/helloworld/grid.htm
http://www.delphikingdom.com/helloworld/dbgridplus.htm


 
ggg   (2004-12-09 10:17) [3]

Все, я разобрался. Надо было просто справку почитать :).

OnDrawDataCell обрабатывается в том случае, если DBGrid.Columns.State = csDefault. Если убрать несколько колонок,
DBGrid.Columns.State = csCustomized



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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
14-1102018582
syte_ser78
2004-12-02 23:16
2004.12.26
Активация WinXP


1-1102495357
Patrick
2004-12-08 11:42
2004.12.26
Эмуляция нажатия клавиши


14-1102570620
uny
2004-12-09 08:37
2004.12.26
Mcafee 9 pro?


4-1100453172
dolphin
2004-11-14 20:26
2004.12.26
список имен папок и файлов


1-1102619614
AlexHawk
2004-12-09 22:13
2004.12.26
MEMO ограничения в строке