Jak wyłączyć formatkę.

0

Witam, jak w temacie. Dotychczas ukrywałem jedynie formatkę za pomocą Form2.Hide, lecz chcę teraz wyłączyć, aby zmienne na formatce się wykasowały.

0

free;

0

Free zawiesza mi aplikację...

0

Chodzi mi też o to, aby po wyłączeniu formatki, móc ją włączyć wprowadziwszy wcześniej nowe zmienne. Na przykład.

Form1:

c:string;
c:=edit1.text;

Form2:

edit2.text:=c;

Program czyta mi pierwszej formatce stringa i wyświetla w drugiej. Mi chodzi o to, żeby po naciśnięciu "Zamknij" w drugiej formatce, wprowadzeniu innego ciągu znaków w edit1 na pierwszej formatce i odpaleniu jeszcze raz drugiej wyświetlił ten nowy string. Teraz cały czas wyświetla pierwszy wczytany string.

0

przyswój sobie może jakieś podstawy na temat klas i obiektów bo pojęcie masz znikome. Poza tym twoje opisy tego co chcesz zrobić są tak zakręcone, że wątpię aby ktokolwiek połapał się o co ci chodzi

0

Pokaż fragment kodu jak odpalasz drugą formatkę.

0

Na 1 formatce

 procedure TForm1.Button5Click(Sender: TObject);

begin
porz:=strtoint(edit2.Text);
count:=root;
Memo2.Visible:=True;
Memo2.Clear;

while count<>nil do

begin
if count^.lp=porz then edit:=count;
count:=count^.Next;
end;
if edit=nil then ShowMessage('Nie ma takiego elementu');

if edit<>nil then
begin
if edit^.wykszt='podsta' then szkola:='podstawowe';
if edit^.wykszt='wyzsze' then szkola:='wysze';
if edit^.wykszt='sredni' then szkola:='srednie';
if edit^.plec='M' then pl:='Mezczyzna';
if edit^.plec='K' then pl:='Kobieta';
memo2.lines.Add('Lp: '+inttostr(edit^.lp));
memo2.lines.Add('Wiek: '+inttostr(edit^.wiek));
memo2.lines.Add('Poparcie: '+edit^.popiera);
memo2.lines.Add('Plec: '+pl);
memo2.lines.Add('Wyksztalcenie: '+szkola);
memo2.lines.Add('Miasto: '+inttostr(edit^.miasto));
memo2.lines.Add('Zmiana zdania: '+edit^.czy);
end;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
porz:=strtoint(edit2.Text);
count:=root;

while count<>nil do

begin
if count^.lp=porz then edit:=count;
count:=count^.Next;
end;
if edit=nil then ShowMessage('Nie ma takiego elementu');

if edit<>nil then
begin
if edit^.wykszt='podsta' then szkola:='podstawowe';
if edit^.wykszt='wyzsze' then szkola:='wysze';
if edit^.wykszt='sredni' then szkola:='srednie';
if edit^.plec='M' then pl:='Mezczyzna';
if edit^.plec='K' then pl:='Kobieta';

Form2.Show;
end;

Druga formatka

procedure TForm2.Button3Click(Sender: TObject);
var
lat, m:integer;
pop,cz,ple,szkol:string;

begin
if combobox1.itemindex=0 then pop:='Tak';
if combobox1.itemindex=1 then pop:='Nie';
lat:=strtoint(edit1.text);
m:=strtoint(edit2.text);
if combobox2.itemindex=0 then ple:='K';
if combobox2.itemindex=1 then ple:='M';
if combobox3.itemindex=0 then szkol:='podsta';
if combobox3.itemindex=1 then szkol:='sredni';
if combobox3.itemindex=2 then szkol:='wyzsze';
if combobox4.itemindex=0 then cz:='Tak';
if combobox4.itemindex=1 then cz:='Nie';
count:=root;
while count^.lp<porz do
count:=count^.Next;

count^.popiera:=pop;
count^.wiek:=lat;
count^.miasto:=m;
count^.plec:=ple;
count^.wykszt:=szkol;
count^.czy:=cz;

new(NewOne);
NewOne:=root;
while not NewOne^.next^.lp=count^.lp do
begin
NewOne:=NewOne^.next;
end;
NewOne^.Next:=count;
form1.Memo1.Clear;

new(NewOne);
NewOne:=root;
while NewOne<>nil do
begin
if NewOne^.lp<10 then
form1.memo1.lines.Add(inttostr(NewOne^.lp)+'            '+inttostr(NewOne^.wiek)+'           '+NewOne^.popiera);
if NewOne^.lp>9 then form1.memo1.lines.Add(inttostr(NewOne^.lp)+'           '+inttostr(NewOne^.wiek)+'           '+NewOne^.popiera);
NewOne:=NewOne^.Next;
end;




Form2.Hide;

end; 
0

Procedurę Button5Click dałem niepotrzebnie, nie ma ona tutaj żadnego znaczenia...

0

Dodam jeszcze że program ma edytować elementy listy jednokierunkowej. Wszzystko śmiga, jdeyną wadą jest brak możliwości zmiany elementu edytowanego..

0

Przed pokazaniem formatki drugiej trzeba uaktualnić jej komponenty np

//w procedurze TForm1.Button6Click
  Form2.Edit1.Text:=Edit2.Text;
  Form2.Edit2.Text:='coś tam';
//i dopiero
  Form2.Show;
0

Dzięki wielkie, pomogło. Początkowo te przypisania miałem na drugiej formatce pod przyciskiem, który raz aktywowany znikał :/ <głupi_ja!>

Jeszcze raz dzięki i pozdrawiam

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