ďťż

Ładny brzuch

ma ktoś pomysł jak utworzyć formularz który bedzie kolejno wyświetlał kolejne cyfry po 1s np 5,4,3,2,1.
Timerki razem nie dzialaja jak trzeba zresztą funkja sleep() też. Jak więc to wykonać ?
Użytkownik migajek edytował ten post 06 listopad 2005, 17:03



ma ktoś pomysł jak utworzyć formularz który bedzie kolejno wyświetlał kolejne cyfry po 1s np 5,4,3,2,1.
  Timerki razem nie dzialaja jak trzeba zresztą  funkja sleep() też. Jak więc to wykonać ?


Jakos nie bardzo kapuje :huh:


wyswietla sie formularz i widzisz odliczanie 5,4,3,2,1
a potem sie wylancza



nie, nie, nie

Jeszcze raz

Chce stworzyć formularz na którym widnieje liczba 5
następnie za 1s 4 za is 3 itd..

I nie mogę tego zrobić (stąd mój post)

próbowałem utworzyć kilka timerów

np
void __fastcall TForm2::Timer1Timer(TObject *Sender) { Label2->Caption="4"; } //----------------------------------------- void __fastcall TForm2::Timer1Timer(TObject *Sender) { Label2->Caption="3"; } //----------------------------------------- void __fastcall TForm2::Timer1Timer(TObject *Sender) { Label2->Caption="2"; } itd..

Ale to nie działa

Sleep(1000);
Label2->Caption="3";
Sleep(1000);
Label2->Caption="2";
Sleep(1000);
Label2->Caption="1";

też nie ponieważ dopuki kod nie zostanie wykonany do końca nie zobaczę żadnego z Labeła

Sorry za nie zrozumiałe sformułowanie postu

Ustaw Interval Timera na 1000 i w onTimer wpisz:
i+=1; if(i<5){ Label1->Caption=IntToStr(5-i); }

i dodaj do zmiennych globalnych zmienna:
int i;


(...)
Jeśli dobrze rozumiem, chodzi Ci o to, że na ekranie nie widzisz "efektów" pośrednich, tzn. widzisz stan początkowy i końcowy ?

Jeśli tak, to często pomaga wstawienie w odpowiednie miejsca kodu:
Application->ProcessMessage();


Jeśli dobrze rozumiem, chodzi Ci o to, że na ekranie nie widzisz "efektów" pośrednich, tzn. widzisz stan początkowy i końcowy ?

Jeśli tak, to często pomaga wstawienie w odpowiednie miejsca kodu:
Application->ProcessMessage();

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •