ďťż

Ładny brzuch

Witam!
Jaki wyjatek sluzy do obslugi bledu konwersji, probowalem z EConvertError, ale nic z tego.
Chodzi mi o to, ze w edit1 ma byc liczba, a gdy bedzie tam jakis znak typu string powinien pojawic sie odpowiedni komunikat jak to zrobic :?

__ __ __ __ __ __ __ __ __ __
Procedure Oskar_;
Begin
ShowMessage('GG:4206396');
End;



help powiada: "If S does not represent a valid number, StrToInt raises an EConvertError exception".ale zeby twoja obsluga wyjatku wyszkoczyla musisz sobie opcjach zmienic:
tools->debugger options->zakladka language exceptions->odznaczyc stop on delphi exceptions.
nu albo odpalic progsa spoza srodowiska delpi.

pozdrawiam
pepsi^no1

try begin blablabla end except on EConvertError do ShowMessage('Błąd konwersji.');
Na przykład :D

Strona mojej grupki programistycznej: www.blaze.er.pl

gg: 4644238

A nie lepiej zapobiec wpisania znaku innego niż cyfrę? Ja zrobiłem coś takiego:

var s:string; implementation procedure TForm1.Edit1Change(Sender: TObject); var b:string; i:integer; d:boolean; begin b:=Edit1.Text; if b='' then exit; d:=true; if (b[length(b)]>'0')and(b[length(b)]<'9') then d:=false; if d then Edit1.Text:=s; Edit1.SelLength:=1; Edit1.SelStart:=length(s)+1; end; procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;  Shift: TShiftState); begin s:=Edit1.Text; end;
to pozwoli na wpisanie tylko cyfr (nawet wklejenie tekstu się nie powiedzie)

------------------------
Pzdr, Cyrkiel



Wielkie THX Cyrkiel, tego mi brakowało ;)

__ __ __ __ __ __ __ __ __ __
Procedure Oskar_;
Begin
ShowMessage('GG:4206396');
End;

Nie lepiej skorzystac z SpinEdit:?

_________________________

www.webpacket.net

Taa, tyle że SpinEdit nie działa z floatopochodnymi.

Strona mojej grupki programistycznej: www.blaze.er.pl

gg: 4644238

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •