Posto uvidjam da se ovde postavljaju pitanja za svaku sitnicu, bez predhodne provere, razumevanja, citanja helpa i googlovanja, moracu da definishem pravila da smanjim nivo off-topica i razglabanja.
Pre nego sto postavite pitanje:
-----------------------------------------
1. Iskoristiti prednosti najboljeg debuggera na planeti
Delphi ima najbolji debugger i jednostavno je nemoguce resiti problem bez njega. Bilo bi najbolje procitati u help-u kako se koristi debugger, visestruko ce da vam se vrati ulozeno vreme.
Osnove koriscenja debuggera:
A) Otici u Project -> Options i iskljuciti optimizaciju
B) uraditi BUILD
C) Sa F5 stavite breakpoint na zeljenu liniju (zacrveni se). U toku izvrshavanja (pokrenut program sa F9 iz delfija), debuger ce da stane na toj liniji. Sada prelaskom misha preko klasa i varijabli, delphi vam pokazuje trenutne vrednosti istih.
Mozete uselektovati mishom klasu/promenjivu i stisnuiti CTRL+F7 i pogledati vrednost, menjati je, itd.
Ukoliko je ta linija poziv na neku drugu funkciju, sa F7, delphi ulazi u nju i debuguje liniju po liniju sa F8.
Ovim cete u 99% slucajeva otkriti sta nije u redu i imati opstu sliku sta nije u redu, koje su vam vrednosti itd.
2. Help fajl
Delfi ima jako precizan help. Nema nepotrebnih stvari i JASNO objasnjava metod/klasu ili bilo sta sto u njemu trazite.
Nakon sto ste uradili Debug, sada imate sliku gde od prilike se nalazi problem. Selektujte zeljenu funkciju mishem i stisnite F1. Help ce vas dovesti tacno na taj deo.
Prelistajte malo i hierarhiju date klase, sve pod "See also", i eventualno analizirajte primer.
3. Google
Niste nasli u help-u sta vam treba? Na netu postoje stotine primera koji su bar upola slicni onome sto zelite da uradite. Potrazite i analizirajte. Garantujem da cete uvek videti nesto sto niste do sad znali.
4. Forum
Znaci, prosli ste kroz debug (to je osnovno), a Help i Google nisu dali zeljene informacije. Tu smo mi. Ali morate da zapamtite, bez detaljnog objasnjenja problema, nemamo nikakve shanse da znamo zasto se sta dogadja. A da bi znali da detaljno objasnite, morate da prodjete kroz debugger.
Nemojte da se libite da okacite deo kôd-a. Nekad je cak potrebno okaciti ceo Unit, ali za to prvo pitajte.
---------------------------------
Ako ste isli ovim redosledom, mogu da garantujem da ce problem biti reshen.
Elem, ako ste preskocili 1, 2 i 3, dobicete opomenu, a posle cu da sankcionisem.
|