ApplicationEvents - jak zablokować komunikat o błędzie

ApplicationEvents - jak zablokować komunikat o błędzie
Chev_Lucas
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 50
0

Witam, chcę zrobić tak, aby program nie zwracał mi błędu np o dzieleniu przez 0. W zasadzie to chodzi mi o błąd związany z HGG.
Jak dam w zdarzeniu ApplicationEventsException np. Showmessage('ŻAL'); to najpierw pokazuje mi domyślne okno błędu, a dopiero później mój komunikat. Próbowałem pisać w zdarzeniu tym action:=nil; albo e.message:='lol'; ale to nic nie zmienia.
Ja chcę całkowicie zablokować wyskakiwanie błędów...
Jak to zrobić pomóżcie

Opi
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1034
0

Dojść do miejsca wystąpienia błędu i go naprawić poprzez ustalenie warunku, gdy zmienna przyjmie wartość 0.

W innych przypadkach stosuje się bloki "try except"

Chev_Lucas
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 50
0

hmm, jak to zrobić? nie wiem ;/

KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Gorlice
0

Lepiej znaleźć błąd i wstawić warunek

Kopiuj
if (dzielnik <> 0) then
//mozna dzielić

albo przechwycić wyjątek

Kopiuj
try
iloraz:= dzielna / dzielnik;
except
on E : EZeroDivide do
  //nic nie rób albo tu jakis komunikat bledu (ew. exit co tam chcesz)
else
  raise //inny wyjątek zostanie obsłużony dalej
end;
cimak
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1668
0

application.onError

SI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 184
0
cimak napisał(a)

application.onError

Być może w najnowszych wersjach tak jest, ale w Delphi 7

Kopiuj
Application.OnException

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.