Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.008 c
1-83597
V-A-V
2003-05-14 12:38
2003.05.26
Сохранение ветки реестра в файл


14-83688
Mak
2003-05-05 14:04
2003.05.26
Crystal Report


3-83334
igor
2003-05-05 13:32
2003.05.26
Глюки ADO


3-83326
Lika
2003-05-06 14:23
2003.05.26
Как перехватить сообщение сервера?


1-83540
val20022002
2003-05-13 17:18
2003.05.26
TTimer





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский