Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
6-55701
dtm
2003-05-13 18:34
2003.07.17
Соединение с IBase через Интернет


7-55868
alexus
2003-05-07 19:03
2003.07.17
Как программно ребутнуть компьютер


4-55900
HollowMan
2003-05-13 15:42
2003.07.17
Как осуществить перерисовку и блокировку содержимого экрана?


4-55911
Петр
2003-04-23 13:40
2003.07.17
Application.MessageBox


3-55421
DBDev
2003-06-24 10:53
2003.07.17
Коллеги, подскажите с CurrencyFormat-ом плиз.




   Наверх