Mega Code Archive

 
Categories / Delphi / OOP
 

Econverterror hatasının önüne geçmek

Sayısal bir alana hatalı bir değer girildiğinde Delphi'nin gösterdiği EConvertError hatasının önüne geçmek Eğer data aware kontroller kullanıyorsanız, kullanıcı sayı girmesi gereken bir alana yanlış bir değer (sayı olmayan) girdiğinde Delphi tarafından bir hata mesajı görüntülenir. Bunun önüne geçmek için aşağıdaki yöntemi kullanabilirsiniz. Bu yöntemde form'un oncreate event'i içerisinde application nesnesinin Exception Handler'ı (bir hata olduğunda oluşan hataya göre kullanıcıya bilgi veren veya hatayı düzeltmeye çalışan procedure) olarak kendi yazacağımız bir procedure'ü belirliyoruz ve EConvertError olayını kendimiz cevaplıyoruz. Diğer hata durumlarında ise Delphi'nin standart Exception Handler'ına işi bırakıyoruz. ... ... procedure MyException(Sender:TObject; E:Exception); interface ... ... procedure TForm1.MyException(Sender:TObject; E:Exception); begin if (E.ClassType.ClassName='EConvertError') then begin { buraya yapmak istediklerinizi yazabilirsiniz } end else Application.ShowException(E); end; ... ... procedure TForm1.FormCreate(Sender: TObject); begin Application.OnException := MyException; end;