Текущий архив: 2003.07.17;
Скачать: CL | DM;
ВнизПроблемма с рисунками в TDBGrid Найти похожие ветки
← →
MishaS (2003-06-25 10:52) [0]В один из столбцов в DBGrid в зависимости от значения поля выводится либо рисунок, либо текст. Проблемма заключается в следующем: при
DBGrid.Enabled:=false
рисунки исчезают. А хотелось чтобы они оставались.
Вот код моего обработчика события OnDrawColumnCell:
procedure TForm1.DBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var Im1: TBitmap;
begin
Im1:=TBitmap.Create;
if (Column.FieldName="Odnorod") then
begin
with DBGrid3.Canvas do
begin
Brush.Color:=clWhite;
FillRect(Rect);
If (Table3.FieldByName("Odnorod").Value=1)then
begin
ImageList1.GetBitmap(2,Im1);
Draw(round ((Rect.Left+Rect.RightIm1.Width)/2),Rect.Top,Im1);
end//if
ELSE
begin
if(Form1.Table3.RecNo=Num_Select)then
Begin
{Brush.Color:=clWhite;
FillRect(Rect);
ImageList1.GetBitmap(0,Im1);
Draw(round((Rect.Left+Rect.Right-Im1.Width)/2),Rect.Top,Im1);}
Font.Color:=clBlack;
Font.Style:=[fsbold];
Brush.Color:=clWhite;
FillRect(Rect);
TextOut(Rect.Left+14, Rect.Top+2,Column.Field.Text);
end
else DBGrid3.DefaultDrawColumnCell(Rect,DataCol,Column,State);
end//ELSE
end;
end;
← →
Edward (2003-06-25 11:17) [1]А зачем делать
DBGrid.Enabled:=false
? Если надо отключать реакцию грида, надо у наборов данных, связанных с ним, вызывать DisableControls и EnableControls.
← →
MISHAS (2003-06-25 12:14) [2]Edward, используя DisableControls я смогу перемещаться по набору данных без отображения их в визуальных компонентах (это надо для проверки вводимых значений, они вводятся в Editы).
← →
KoluChi (2003-06-25 13:01) [3]
> MishaS ©
прочитайте статью
http://www.delphikingdom.com/helloworld/nogrid.htm
думаю, вы поймете, почему так происходит и, возможно, найдете решение
Страницы: 1 вся ветка
Текущий архив: 2003.07.17;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.009 c