Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 2.795 pregleda

Najnovija ↓

EConvertError handling 24.09.2011. u 21:28 · pre 183 meseca #1
Imam Edit u koji se treba unijeti integer i dugme koje treba npr.

for i:=0 to srttoint (edit1.text)

ali kako da proverim da li je u edit stvarno integer , tj. cak i da nije kako da uhvatim gresku prije nego sto program izbaci upozorenje tj.
da izbacim svoju poruku umjesto greske...
Hvala

Re: EConvertError handling 25.09.2011. u 06:56 · pre 183 meseca
izmenjeno 1 put, poslednji put ((BugA)) 25.09.2011. u 07:27
  1. ((BugA))25.09.2011. u 07:27zapis iz teksta poruke
#2
Pozdrav reikonija, vidi ovo (link):
Code:
// Example code : Catching string to integer conversion errors
var
  A : Integer;

begin
  // We will catch conversion errors
  try
    A := StrToInt('100 ');  // Trailing blanks are not supported
  except
    on Exception: EConvertError do
      ShowMessage(Exception.Message);
  end;

  try
    A := StrToInt('$FG');   // 'G' is an invalid hexadecimal digit
  except
    on Exception : EConvertError do
      ShowMessage(Exception.Message);
  end;
end;

Ako hoces da budes siguran da je u pitanju stvarno broj (integer), mozes uraditi nesto ovako ne bi li iz poruke izbacio sve znake koji nisu brojevi:
Code:
var
    i    : integer;
    sBroj: string;
begin
  sBroj := '';
  if (Edit1.Text <> '') then
  begin
    for i := 1 to Length(Edit1.Text) do
    begin
      if Edit1.Text[i] in ['0'..'9'] then sBroj := sBroj + Edit1.Text[i];
    end;
    Edit1.Text := sBroj;
  end;
end;
Re: EConvertError handling 26.09.2011. u 20:39 · pre 183 meseca #4
Hvala na odgovorima , napravio sam funkciju sa boolean true u slucaju greske , i false ako je integer , sastavio sam to od dijelova koda koji je postovan :) . Hvala na odgovoru :)
Re: EConvertError handling 27.09.2011. u 18:15 · pre 183 meseca #5
function TryStrToInt(const S: string; out Value: Integer): Boolean;
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme