Skocz do zawartości
lasjak

[delphi] Wstawianie Pozycji Na Liscie Jednokierunkowej

Rekomendowane odpowiedzi

Mam problem ze wstawieniem pozycji na liscie jednokierunkowej. Kod do wstawiania mam w 2 unitach. Program sypie mi sie przy wykonywaniu 2 linii kodu zaznaczonych na czerwono w unicie6. Pojecia nie mam co jest nie tak... Z gory dziekuje za pomoc :).

 

W unicie1 znajdują sie takie deklaracje typu, zmiennych i procedurka:

 

type  wskaznik=^koncerty;  koncerty=record	date:string[10];	band:string[15];	place:string[8];	tprice:single;	nost:integer;	cost:single;	next:wskaznik;	end;var  Form1: TForm1;  plik:textfile;  x,first,last,prev:wskaznik;  modified:boolean;procedure TForm1.Button7Click(Sender: TObject);var n:byte;  NumOfRec:byte;begin   x:=last;	NumOfRec:=0;	while x<>nil do	  begin		  NumOfRec:=NumOfRec+1;		  x:=x^.next;	  end;  if last=nil then NumOfRec:=1;  if (strtointdef(Edit2.Text, -1)>0) and (strtointdef(Edit2.Text, -1)<=NumOfRec) then	begin	n:=strtoint(Edit2.Text);	x:=last;	new(prev);	prev:=nil;	while (n>1) and (x^.next<>nil) do	  begin		n:=n-1;		prev:=x;		x:=x^.next;	  end;	new(x);	Form6.ShowModal;	end  else	  ShowMessage('Blednie podany nr elementu do dodania!');  modified:=True;end;

w Unicie6 nie ma juz zadnej deklaracji typu ani wskaznika, ktory jest wykorzystywany z unitu1, pomimo tego wszystko powinno dzialac...

 

[color=#FF0000]x^.next:=prev^.next;	prev^.next:=x;[/color]	Form1.Memo1.Text:='';	x:=last;	while x<>nil do	  begin   s:=x^.date+';'+x^.band+';'+x^.place+';'+floattostr(x^.tprice)+';'+inttostr(x^.nost)+';'+floattostr(x^.cost)+';';		Form1.Memo1.Lines.Add(s);		x:=x^.next;	  end;	Close;

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...