Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Delphi_jak ošetřit špatné zadání

Funkce IntToStrDef() umoznuje zkontrolovat zadani a v pripade spatneho vstupu vrati tebou preddefinovanou hodnotu. Napr. pokud se maji zadavat pouze kladna cisla, pak:

a1 := IntToStrDef(Edit1.Text, -1);  // vraci -1 pri zadani neceho jineho nez cislo

Uzivateli bys mel zavranit vlozit neco chybne, takze do OnKeyPress vsech editu dat (napises jednu udalost a ostatnim ji priradis):

if not (Key in [#0..#31, '0'..'9'] then Key := #0;


A na konci pak osetris pred scitanim, napr. zda a1 nebo a2 nebo a3 neni zaporne:

if (a1<0) or (a2<0) or (a3<0) then
begin
  Edit4.Text := 'chyba';
  ShowMessage('Chyba v zadani. Zadejte pouze kladna cela cisla!');
end
else
begin
  a4 := a1 + a2 + a3;
  Edit4.Text := IntToStr(a4);
end;

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny