Ładny brzuch
oto kawalek mojego kodu... i mam petle FOR... tylko, ze podczas korzystania ze zmiennej, wyswietla mi wartosc poczatkowa... a nie od poczatkowej do ostatniej...
prosze o pomoc!
var djkey:string; i:integer; linijka, trescLinijki, tmpWords:string; strhlp:string; notekstit:boolean; begin strhlp:='cos'; djkey:='[abcdefghijkl: "'+strhlp+'"] '; linijka:='DefaultValue '; notekstit:=true; if Memo1.Lines.Count>=1 then begin for i:=(Memo1.Lines.Count-1) downto 0 do begin trescLinijki:=Memo1.Lines.Strings[i]; tmpWords:=Copy(trescLinijki,2,12); if tmpWords='abcdefghijkl' then begin linijka:=Memo1.Lines.Strings[i]; notekstit:=false; break; end else begin notekstit:=true; break; end; end; if notekstit=false then if NOT (linijka=djkey) then memo1.lines.add(djkey); end else memo1.lines.add(djkey); end;
[kod sprawdza zawartosc memo i szuka 1 linijki od dolu zawierajacej dany poczatek. jesli bedzie inny niz dana zmienna, dodaje nowa linijke]
Wywal break'i ;-)
Wydaje mi si, e niepotrzebne i e bedzie dziaa.
Pzdr.
no niby bez breakow nie pojdzie. bo rzecz w tym, ze maja wlasnie one przerwac, bo inaczej bedzie wiecej niz jedna wartosc.
niby i w tym siedzi to (bo dostaje jedna wartosc), ale skoro kod jest wykonywalny kolejno.. jak od razu, po wykonaniu petli rzuce procedure na sprawdzenie zawartosci integera, dostaje tylko jedna wartosc... a no niby do breaka troche linijek... wiec niby nie powinno to zalezec od tego, ale sprawdze...
Sprobuj zamiast break wstawic continue
sprawdze i odezwe sie w zwiazku z tym...
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
prosze o pomoc!
var djkey:string; i:integer; linijka, trescLinijki, tmpWords:string; strhlp:string; notekstit:boolean; begin strhlp:='cos'; djkey:='[abcdefghijkl: "'+strhlp+'"] '; linijka:='DefaultValue '; notekstit:=true; if Memo1.Lines.Count>=1 then begin for i:=(Memo1.Lines.Count-1) downto 0 do begin trescLinijki:=Memo1.Lines.Strings[i]; tmpWords:=Copy(trescLinijki,2,12); if tmpWords='abcdefghijkl' then begin linijka:=Memo1.Lines.Strings[i]; notekstit:=false; break; end else begin notekstit:=true; break; end; end; if notekstit=false then if NOT (linijka=djkey) then memo1.lines.add(djkey); end else memo1.lines.add(djkey); end;
[kod sprawdza zawartosc memo i szuka 1 linijki od dolu zawierajacej dany poczatek. jesli bedzie inny niz dana zmienna, dodaje nowa linijke]
Wywal break'i ;-)
Wydaje mi si, e niepotrzebne i e bedzie dziaa.
Pzdr.
no niby bez breakow nie pojdzie. bo rzecz w tym, ze maja wlasnie one przerwac, bo inaczej bedzie wiecej niz jedna wartosc.
niby i w tym siedzi to (bo dostaje jedna wartosc), ale skoro kod jest wykonywalny kolejno.. jak od razu, po wykonaniu petli rzuce procedure na sprawdzenie zawartosci integera, dostaje tylko jedna wartosc... a no niby do breaka troche linijek... wiec niby nie powinno to zalezec od tego, ale sprawdze...
Sprobuj zamiast break wstawic continue
sprawdze i odezwe sie w zwiazku z tym...