Форум: "Основная";
Текущий архив: 2002.08.26;
Скачать: [xml.tar.bz2];
ВнизСобытие RxDBGrid3DrawColumnCell - ВЕШАЕТ комп 8-( Найти похожие ветки
← →
ЮРИЙ_К (2002-08-15 13:24) [0]Коллеги, подскажите, в какой момент роисходит енто событие. Вставил в него код для проверки поля базы и вставки в ячейку картинки. Стоит только энергично поскролинговать грид колесом мыши туда-сюда, выскакивает мессага непонятная и капец, помогает только кнопочка-выручалочка "Reset". Подскажите, плис, где грабли?
А вот и кодик мой
procedure TLicChFrm.RxDBGrid3DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
Var
Im1 : TBitmap;
begin
if LicCh_UTbl.RecordCount <> 0 then
begin
Im1 := TBitmap.Create;
if (Column.FieldName = "PriznakRas") then
with RxDBGrid3.Canvas do
begin
FillRect(Rect);
if not (LicCh_UTbl.FieldByName("PriznakRas").Value) then
ImageList1.GetBitmap(0,Im1)
else
ImageList1.GetBitmap(1,Im1);
Draw(round((Rect.Left + Rect.Right - Im1.Width)/2), Rect.Top, Im1);
end;
end;
end;
← →
ZrenBy (2002-08-15 13:28) [1]А ты Im1 Free делаешь?
← →
Skier (2002-08-15 13:29) [2]>ЮРИЙ_К
А освобождать Im1 не пробовал !?
← →
ЮРИЙ_К (2002-08-15 13:31) [3]ZrenBy
Не-а, блин, даже не подумал об этом, ща попробую
← →
ЮРИЙ_К (2002-08-15 13:34) [4]ZrenBy, Skier - Вы ГЕНИИ , спасибо, работает !!!!!!!!!!! 8-)
← →
Skier (2002-08-15 13:36) [5]>ЮРИЙ_К
Небольшой совет (если позволишь) - нужно ещё
обязательно использовать try-блок :
Im1 := TBitmap.Create;
try
//твой код...
finally
Im1.Free;
end; //try
← →
ЮЮ (2002-08-16 04:38) [6]А не лучше ли использовать метод Draw самого ImageList ?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.26;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c