Вниз
Скачать: 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.016 c
14-50442
Dubi
2003-05-29 01:19
2003.06.16
Russin Help


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


6-50425
imbicil
2003-04-11 18:26
2003.06.16
Немагу отправить пакет udp


1-50392
midi
2003-06-04 12:02
2003.06.16
как правильно использовать CLX компоненты в Dll/Package


14-50459
Tomkat
2003-05-29 09:40
2003.06.16
APRO Delphi6




   Наверх