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

Вниз

Помогите найти ошибку плз!!!   Найти похожие ветки 

 
MetalFan ©   (2003-05-13 12:31) [0]

Есть форма поиска, на ней DBGrid,связанный с таблицей на DataModule(отображает результат).
при первом запуске, если прокрутить Грид вправо(до последнего столбца) то вываливается ошибка.
обработчик:

procedure TFindForm.DBGrid1DrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn;
State: TGridDrawState);
begin
IF TDBGrid(Sender).DataSource.DataSet.RecNo mod 2 = 1
Then TDBGrid(Sender).Canvas.Brush.Color:=RGB($FF,$99,$99);
// Восстанавливаем выделение текущей позиции курсора
IF gdSelected IN State
Then Begin
TDBGrid(Sender).Canvas.Brush.Color:= clHighLight;
TDBGrid(Sender).Canvas.Font.Color := clHighLightText;
End;
// Просим GRID перерисоваться самому
TDBGrid(Sender).DefaultDrawColumnCell(Rect,DataCol,Column,State);
//по выводу фотки...
If Column.Title.Caption="Фото" then begin
if TDBGrid(Sender).DataSource.DataSet.FieldByName("IsFoto").AsBoolean then begin
With TDBGrid(Sender).Canvas do begin
FillRect(Rect);
ImageList1.Draw(TDBGrid(Sender).Canvas,Rect.Left,Rect.Top, 0 );
end;//with
end else begin
With TDBGrid(Sender).Canvas do begin
FillRect(Rect);
ImageList1.Draw(TDBGrid(Sender).Canvas,Rect.Left,Rect.Top, 1 ); {ВЫВАЛИВАЕТСЯ ОШИБКА Acces violation at adress...}
end;//with
end;//else
end;//if}
end;

вывожу в гриде в зависимости от содержания поля IsFoto одну из 2 иконок.
Если "прокручивать" Грид уже после поиска(т.е. в таблице уже есть какая-то инфа), то ошибка не вываливается.
Заранее большой Thanks всем ответившим.


 
MetalFan ©   (2003-05-13 13:02) [1]

F1,F1!!!
тьфу HEEEELP!!!!


 
Clickmaker ©   (2003-05-13 13:02) [2]

Вставить в начало этого обработчика проверку:
if DataSet.IsEmpty then Exit;

Какой смысл рисовать пустой грид? :)


 
MetalFan ©   (2003-05-13 13:06) [3]

гм! а что , идея! счас попробую!
thnx


 
MetalFan ©   (2003-05-13 13:13) [4]

thnx 2Clickmaker ©
вроде сработало!!!
стыдно, что сам не допер)))
Удачи!



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

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

Наверх




Память: 0.47 MB
Время: 0.015 c
14-83745
Lola
2003-04-25 16:04
2003.05.26
---|Ветка была без названия|---


14-83717
rosl
2003-05-07 06:29
2003.05.26
сумма


1-83579
tv
2003-05-13 13:50
2003.05.26
OleVariant


3-83347
Rocker
2003-04-28 10:34
2003.05.26
как программно ввести пароль при доступе к БД?


1-83543
UserMicc
2003-05-12 16:28
2003.05.26
При создании компонента...