Zamykanie i otwieranie formy

Odpowiedz Nowy wątek
2006-01-30 20:54
0

Witam wszystkich :) Z gory mowie, ze korzystalem z opcji szukaj, ale nic na ten temat niestety nie znalazlem(byc moze jest to bardzo proste i nikt o to nie pyta).
Otoz mam problem- chciałbym, aby po wlaczeniu programu 1 forma byla widoczna powiedzmy przez 5 sek i po uplynieciu tego czasu wlaczala sie 2 forma...

Pozostało 580 znaków

2006-01-30 21:01
0

onCreate formy1

sleep(5000);
Form1.Hide;
Form2.Show;

Niestety forma1 się 'zamrozi?, aby tego uniknąć zrób to samo tyle ze w nowym wątku.


Pozostało 580 znaków

2006-01-30 21:05
0

Na Form1 daj Timer1 z odliczaniem do 5 sekund. W jego akcji daj Form2.Show; oraz Timer1.Enabled:=FALSE; . Jeśli chcesz, by Form1 nie była wtedy widoczna, daj Form1.Hide; (Form1.Close; zamknie całą aplikację, o ile nie ustawisz Application.ShowMainForm:=FALSE; więc lepiej dać Form1.Hide;)


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-01-30 22:35
0

Bardzo dziekuje za odpowiedzi i pozdrawiam :)

Pozostało 580 znaków

2006-01-30 23:57
0

a może prościej poczytać o SplashScreen :> niż takie wynalazki stosować :P


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-01-31 02:08
0
Help Delphi - Displaying splash screen napisał(a)

The following two event handlers display and close a form called SplashScreen before the application's main form opens. The constant Startup is declared in Form1's interface part. The first event handler calls the Show method of SplashScreen from Form1's OnActivate event.

Delphi example

procedure TForm1.FormActivate(Sender: TObject);
begin
if Startup then
begin
Startup := False;
SplashScreen.Show;
end;
end;

SplashScreen contains a Timer component whose Interval property is set to 3000, so the form is displayed for three seconds and then closes. The form's Close method is attached to the timer component's OnTimer event.

Delphi example

procedure TForm2.Timer1Timer(Sender: TObject);

begin
Close;
end;

Oto twój "wynalazek".


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-01-31 02:13
0
Szczawik napisał(a)

Jeśli chcesz, by Form1 nie była wtedy widoczna, daj Form1.Hide; (Form1.Close; zamknie całą aplikację, o ile nie ustawisz Application.ShowMainForm:=FALSE; więc lepiej dać Form1.Hide;)

widzisz różnicę??? Odkąd to główną formę peogramu traktuje się jak SS???


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-01-31 02:15
0

Skąd pewność, że to SplashScreen? OK, może się czepiam, ale przecież tak też się da, bo to, że zamknięcie głównej formy programu zamyka go całkiem jest wymysłem Delphi, a nie systemu.


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-01-31 02:31
0
Szczawik napisał(a)

Skąd pewność, że to SplashScreen?

Nie bardzo wiem czego dotyczy to pytanie

OK, może się czepiam, ale przecież tak też się da, bo to, że zamknięcie głównej formy programu zamyka go całkiem jest wymysłem Delphi, a nie systemu.

Tak??? to zrób coś takiego w VC++ zobaczysz jak działa, albo weź jakiś program, który wyświetla kilka okienek na raz (np. Opera) i zamknij główne okno to zobaczysz co się stanie. A tak swoją drogą to poczytaj może o organizacji windowsa i o systemie komunikatów to będziesz wiedział czemu główne okno jest inne niż wszystkie :)

SS to SS a nie jakieś wymysły. Jego zadanie to pojawić się przy starcie programu, pokazać coś userowi (postę prac przy ładowaniu danych, logo, info, że nie zapłacił za program, itp) a następnie ma zostać zamknięty i wyładowany z pamięci bo nikomu nie jest już do niczego potrzebny. Pomysł z Form1.Hide jest w tym momencie bardzo chybiony i nie masz się co spierać bo choćbyś nie wiem jak argumentował to nie będziesz miał racji.


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-01-31 02:46
0

Organizację Windows znam bardzo dobrze i bez problemu można zrobić aplikację w której zamknięcie okna głównego nie zamyka programu. To, że w środowiskach RAD tak zrobiono wynika z ułatwienia, jakie to wnosi dla użytkowników.

Proponuję EOT.

//Choć jasne, że przyznam Ci rację, że po pokazaniu Splasha nie powinno zostać po nim żadnego śladu, bo po co.. Sądzę, że myślimy o tym samym, tylko, że ja chciałem pokazać to osobie, która jest początkująca (bo inaczej by nie pytała), a ty piszesz, jak się to normalnie powinno robić - a to nie zawsze to samo.

Over and Out.


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2006-01-31 10:18
0
Szczawik napisał(a)

Proponuję EOT.

OK w sumie niema sensu spierać się o to :)

Choć jasne, że przyznam Ci rację, że po pokazaniu Splasha nie powinno zostać po nim żadnego śladu, bo po co.. Sądzę, że myślimy o tym samym, tylko, że ja chciałem pokazać to osobie, która jest początkująca (bo inaczej by nie pytała), a ty piszesz, jak się to normalnie powinno robić - a to nie zawsze to samo.

to też racja, chociaż ja jestem zdania, że od początku należy pokazywać jak to ma wyglądać poprawnie, bo potem jak ktoś się nauczy robić coś prościej a nie powiedzmy "fachowo" to może mu być ciężko się przestawić


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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