ďťż

Ładny brzuch

witam. mam pytanie.

chciałbym w Delphi napisać blok który będzie wyglądał podobnie do tego poniżej zanotowanego w javie:

try catch finally

chodzi mianowicie o to że w delphi chcę zrobić obsługę błędu. i jeżeli błąd wystąpi to ma wyświetlić informację, a jak się uda to ma wyświetlić inną operację.



try costam; //tu obawiasz sie bledu costam2; //tu tez :P except Showmessage('Ble:( Error:('); end;

fajnie migajek. tyle to ja też wiem. ale ja chcę jeszcze dodać co ma się stać jeżeli błąd nie wystąpi. że tak można zrobić to wiedziałem. niestety to nie urządza. powiedzmy że ma być tak że jeżeli błąd nie wystąpi

zmienna := 1

a jak wystąpi

zmienna := 0


fajnie migajek. tyle to ja też wiem. ale ja chcę jeszcze dodać co ma się stać jeżeli błąd nie wystąpi. że tak można zrobić to wiedziałem. niestety to nie urządza. powiedzmy że ma być tak że jeżeli błąd nie wystąpi

zmienna := 1

a jak wystąpi

zmienna := 0



No problem:procedure TForm1.Button1Click(Sender: TObject); var i, j, error:integer; begin error:=0; try j:=0; i:=2 div j; except error:=1; end; caption:=inttostr(error)+' '+inttostr(i); end;

dzięki cyrkiel. częściowo rozwiązałeś mój problem. niestety tylko częściowo :/ kurde. trzeba by do borlanda napisać żeby to zdeczka zmienili. :/


kurde. trzeba by do borlanda napisać żeby to zdeczka zmienili. :/


dzięki cyrkiel. częściowo rozwiązałeś mój problem. niestety tylko częściowo :/ kurde. trzeba by do borlanda napisać żeby to zdeczka zmienili. :/


Wydaje mi się, że nie bardzo to rozumiesz. Postaram ci się to wyjaśnić w sposób zrozumiały:                                                                                              try showmessage('tu spodziewam się bledu ale naszczescie nie wystapił'); except showmessage('blad wystapil ale w takim przypadku mam inne rozwiazaznie'); finally   showmessage('a to jest wykonywane zawsze nie zależnie czy byl blad czy nie');


powiedzialbym tak... nie ucz ojca dzieci robic B)
Sprawdz najpierw kod, a kiedy juz zobaczysz ze tak sie nie da - nie publikuj go ;)


Widze, że palemka do głowy udeża. Kod jest poprawny.


Widze, że palemka do głowy udeża. Kod jest poprawny.


synku, nic mi do glowy nie udeza - po prostu  delphi nie zezwala na umieszczenie w jednym bloku except i finally - albo to albo to.
//inaczej pytanie j-maila nie mailoby sensu, a on programuje dluzej niz my obaj razem wzieci

statjacek -> więc powiem Ci tak. może ty nie czytasz "delphi 7. Kompendium programisty" tylko coś innego? oczywiście że delphi nie zezwala na taką konstrukcję.

posiadam delphi 7 i jakoś po takiej konstrukcji w trakcie kompilacji wywala błąd pod tytułem expected end but finally found.

powiedz mi w takim razie geniuszu dlaczego ten kod w delphi 7 nie działa (jest napisany jak sobei życzyłeś)

procedure TForm1.Button1Click(Sender: TObject); var s:string; d:tdatetime; begin s:='asasf'; try  d := StrToDateTime(s); except  showmessage('doopa'); end; end;

:|||
procedure TForm1.Button1Click(Sender: TObject); var  doopa : String; begin  try    try      ShowMessage('Try');      Tag := StrToInt(doopa);    except      ShowMEssage('except')    end;  finally    ShowMessage('finally');  end; end;


statjacek -> więc powiem Ci tak. może ty nie czytasz "delphi 7. Kompendium programisty" tylko coś innego? oczywiście że delphi nie zezwala na taką konstrukcję.

posiadam delphi 7 i jakoś po takiej konstrukcji w trakcie kompilacji wywala błąd pod tytułem expected end but finally found.

powiedz mi w takim razie geniuszu dlaczego ten kod w delphi 7 nie działa (jest napisany jak sobei życzyłeś)

procedure TForm1.Button1Click(Sender: TObject); var s:string; d:tdatetime; begin s:='asasf'; try  d := StrToDateTime(s); except  showmessage('doopa'); end; end;


Owszem pozwala pisałem, że pominołem end; I oczywiście to puzniej poprawiłem. Jakbyś uważniej czytał posty to byś to zauważył


Chodzi Ci o ten kod z postu nr 8 ?? To tam też jest błąd.


Z Postu nr 7. Pisałem, że pominołem end; i potem to poprawiłem. Migajek skopiował wersje niepoprawioną.


#8 - post nr 8 ;) Pominąłeś nie tylko end. Popatrz się na ten kod co Bełdzio napisał (post #15) - dotąd się w niego wpatruj aż zobaczysz gdzie jeszcze zrobiłeś błąd ;) Albo skopiuj sobie swój własny kod do Delphi i spróbuj skompilować.


Masz racje. I w delphi 7. Kompendium programisty jest dobrze. To ja nieuważnie napisałem ten kodzik. Jest do kładnie tak jak napisał Bełdzio.

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