Delphi - Problem z elementami formatki

0

Chodzi o to że najpierw wczytuje dane z pliku na liste jednokierunkową a później wprowadzam to do do obiektu stringgrid (taka tabelka)
Kod wygląda tak
Ta procedura uruchamia się po kliknięciu ok:

procedure TForm1.Button1Click(Sender: TObject);
  var
    prev: plist;
  begin
    x:=Edit1.Text;
    AssignFile(plik, x);
    Reset(plik);
    czytaj;
    StringGrid1.RowCount:=licz;
    StringGrid1.ColCount:=6;
    StringGrid1.FixedRows:=1;
    StringGrid1.FixedCols:=1;
    StringGrid1.Cells[0,0]:='Nr';
    StringGrid1.Cells[1,0]:='Data';
    StringGrid1.Cells[2,0]:='Nazwa';
    StringGrid1.Cells[3,0]:='Godzina';
    StringGrid1.Cells[4,0]:='Kategoria';
    StringGrid1.Cells[5,0]:='Wiek';
    wyswietl;
  end;

Procedura wyświetl wygląda namiast tak:

procedure wyswietl;
  var
    prev: plist;
  begin
    prev:=first;
    licz:=0;
    while prev<> nil do
      begin
        inc(licz);
        StringGrid1.Cells[0,licz]:=IntToStr(prev^.nr);
        StringGrid1.Cells[1,licz]:=prev^.dzien;
        StringGrid1.Cells[2,licz]:=prev^.nazwa;
        StringGrid1.Cells[3,licz]:=prev^.godzina;
        StringGrid1.Cells[4,licz]:=prev^.kat;
        StringGrid1.Cells[5,licz]:=prev^.wiek;
        prev:=prev^.next;
      end;
  end;

I gdy próbuje skompilować wyskakuje mi błąd StringGrid1.Cells że "Undeclared identifier StringGrid1"
Jak nie tworze tej procedury wyświetl i po prostu wszystko wrzucam w procedure TForm1.Button1Click to wszystko działa elegancko. Wie ktoś może czemu tak się dzieje?

Aha i dzieje się to też w przypadku innych elementów np Edit1

Z góry dzięki za pomoc ;)

1

Bo procedura wyswietl nie jest zadeklarowana w klasie TForm1 czyli powinieneś:

type
  TForm1 = class(TForm)
    //...
  private
    { Private declarations }
    procedure wyswietl;
    //...

//i później
procedure TForm1.wyswietl;
  var

ewentualnie możesz odwoływać sie w ten sposób:

Form1.StringGrid1...
0

dzięki bardzo ;) już śmiga ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1