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

Вниз

Как добавить картинку в ячейку DBGrid?   Найти похожие ветки 

 
Lexer ©   (2004-01-12 10:50) [0]

Как добавить картинку в ячейку DBGrid?


 
alex_*** ©   (2004-01-12 10:52) [1]

use OnDrawColumnCell


 
Lexer ©   (2004-01-12 10:58) [2]

ну то понятно, я там могу написать условие и нарисовать на канвасе... но, блин, я забыл как тама рисовать :(


 
alex_*** ©   (2004-01-12 11:00) [3]

Canvas.Draw(...)


 
Lexer ©   (2004-01-12 12:24) [4]

Разобрался!!! Кидаю код, может кому тоже надо...
В данном примере в первом столбце дб-грида показываются картинки, взависимости от значения его ячеек. Для меня - это юридический статус, и картинки меняются взависимости от того юр. лицо или это простой смертный.

procedure TfrmDoc.dbgDocDrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
var
Bitmap: TBitmap;
Offset: Integer;
BMPRect : TRect;
begin
if DataCol = 0 then
with (Sender as TDBGrid).Canvas do
begin
FillRect(Rect);
Bitmap := TBitMap.Create;
imgImages.GetBitmap(dbgDoc.Fields[0].AsInteger, Bitmap);
if Bitmap <> nil then
begin
BMPRect := Bounds(Rect.Left, Rect.Top ,
Rect.Bottom - Rect.Top, Rect.Bottom-Rect.Top);
StretchDraw(BMPRect, BitMap);
Offset := Rect.Bottom - Rect.Top + 6;
end;
Bitmap.Free;
end;
end;


 
NAlexey ©   (2004-01-12 12:43) [5]

>Bitmap.Free;
Если у тебя программа не будет доходить до этого места, ты получишь ощутимую утечку памяти, учитывая что все это происходит в событии на рисование ячейки.



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

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

Наверх




Память: 0.47 MB
Время: 0.01 c
1-72821
AllDontFire
2004-01-09 17:55
2004.01.23
Можно ли создать, заранее не описанную переменную в RunTime?


4-72985
_8989
2003-11-14 21:00
2004.01.23
Помогите зарегистрировать комбинацию клавишь или одну...


7-72959
qwe
2003-11-06 10:32
2004.01.23
Как можно получить информацию о жестком диске


8-72838
Tol-12
2003-09-12 23:26
2004.01.23
Gif


1-72717
Vi0let
2004-01-12 07:20
2004.01.23
Как сменить уже выставленный form1.brush.Bitmap