Форум: "Основная";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизПрорисовка в 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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.036 c