W jaki sposob zamknac jedna forme poprzez 2

0

Chodzi mi o to ze pisze program kafejka do obslugi kafejki internetowej. Probujac bawic sie formami nie moglem <ort>rozgrysc </ort>w jaki soposob mozna jedna forme zamknac poprzed druga forme.
Mam cos takiego:

 procedure tform1.blokada;
       begin
          form3.Showmodal;
       end;

    procedure tform1.odblokowanie;
    begin
       form2.Showmodal;
    end;

I teraz jak zrobic zeby blokada zamykala odblokowanie i odwrotnie.
Z gory dziekuje za pomoc :]

0

Na początek spróbuj tak form2.show a nie form2.showmodal oraz form3.show
a do zamykania służy instrukcja instrukcja close np.
form2.close

0

Wydaje mi sie, ze showmodal moze byc, tylko jak chcesz zamknac np blokade to piszesz

form3.close;
form2.showmodal;

Czytales ten przyklejony temat na gorze forum? Polecam kurs Adama w dziale kursy, naprawde swietna robota. Powinno tam byc o oknach... albo w faq.

//dopisane
A, i jeszcze jedno. Raczej nie zrobisz tego z drugiego okna modalnego. Jezeli chcesz otworzyc blokade, wyzej wymienione polecenia napisz w odblokowaniu lub form1.

0

Czy cos takiego powinno byc?? Bo ja juz do konca zglupialem...

 procedure tform1.blokada;
       begin
form3.showmodal;
form2.close;
  end;


    procedure tform1.odblokowanie;
             begin
       form2.ShowModal;
       form3.Destroy;
    end;

To dziala ale blokady mi nie chce zamknac;(

0

Procedura Destroy, jak sama nazwa wskazuje, niszczy okna... wiec jeszcze raz:

procedure TForm1.Blokada;
begin
 form2.Close;
 form3.ShowModal;
end;

procedure TForm1.Odblokuj;
begin
 form3.Close;
 form2.ShowModal;
end;

I jeszcze jedno, nazywaj wszystko zrozumiale, np. form3 - BlokadaFrm, bo przez to ja tez powoli glupieje ;P

// może zamiast Close dać Hide? - ŁF

0

Poprawilem to i nie dziala. jak wlaczam odblokowanie to blokada zostaje :(. Aha moze to ma znaczenie blokadafm mam ustawiona na wsmaximizet (nie obwiniajcie mnie bo w tej chwili prze tego mojego programa pisze na strzepach - komp mi sie powiesil przy uruchomieniu :] ) i styl fsnone. No i stoje z tym programem.

0

Łukasz, moze masz racje. Bo z tego co wywnioskowalem to form1 jest i tak niewidoczne, wiec... bez modalnego i z hide... to by bylo tak:

procedure TForm1.Blokada;
begin
 OdblokujFrm.Hide;
 BlokadaFrm.Show;
end;

procedure TForm1.Odblokuj;
begin
 BlokadaFrm.Hide;
 OdblokujFrm.Show;
end;

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