Вниз
Скачать: CL | DM;

Как бороться с AV   Найти похожие ветки 

← →
TCrash ©   (2003-06-03 14:43) [0]

имеется TListView.при выполнении кода
procedure TForm3.ListAdminsClick(Sender: TObject);
var
p: PAdmin; //указатель но структуру
i:integer;
b:boolean;

procedure eav;
var i:integer;
begin
..................
end;
begin
b:=false;
try
p:=ListAdmins.Selected.Data;
except
on EAccessViolation do eav
end;
if b then exit;
.................
end;

выскакивет AccessViolation (если клик происходит мимо элемента списка). Я согласен, должна возникать ошибка, но ведь try..except вродебы и призван бороться с такими вещами.
Где я на грабли наступаю.


← →
Palladin ©   (2003-06-03 14:49) [1]

из IDE наверно запускаешь, или AV возникает не тут...


← →
clickmaker ©   (2003-06-03 14:49) [2]

А не проще ли проверить if (ListAdmins.Selected <> nil) ? Уж на такие неприкрытые грабли зачем наступать ? :)


← →
DVM ©   (2003-06-03 14:50) [3]


> TCrash ©

не проще ли проверить выделен элемент или нет, чем городить try-except


← →
Song ©   (2003-06-03 14:55) [4]

IF Assigned(Selected) then ...


← →
TCrash ©   (2003-06-03 14:58) [5]

Всем спасибо, про проверку не догнал.

Наверное не доспал вчера :-)



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

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



Память: 0.45 MB
Время: 0.012 c
8-50399
maker
2003-02-02 12:40
2003.06.16
MP3 Декодер


1-50373
sts
2003-05-30 08:18
2003.06.16
преобразование даты в строку


1-50381
1977
2003-06-04 11:37
2003.06.16
Кнопка на панели задач...


6-50429
VIB
2003-04-12 11:57
2003.06.16
Application


1-50332
Merlot
2003-06-03 15:00
2003.06.16
Build With Runtime Packadges




   Наверх