Strona 1 z 1

Wygaszacz ekranu

Nowy postNapisane: niedziela, 2 listopada 2008, 13:09
przez bloodoks
Witam

Jestem w trakcie pisania wygaszacza ekranu i napotkalem pewnen problem. Mianowicie owy wygaszacz ma dzialac tak: na zmiane maja pokazywac sie dwa rozne obrazki. I teraz mam takie pytanie. Jak zrobic, zeby dwie formy w ktorych sa zaladowane obrazki "dynamicznie" pokazywaly sie co np 2 sekundy?

Z gory dzieki za pomoc, pozdrawiam

Re: Wygaszacz ekranu

Nowy postNapisane: niedziela, 2 listopada 2008, 13:19
przez Cyfrowy Baron
A po co dwa formularze?!

Umieść na formularzu obiekt Image1 i Timer1. Właściwość Interwal obiektu Timer1 ustaw na 2000 co się równa 2 sekundy. W zdarzeniu OnTimer wczytuj do Image grafiki:

Kod: Zaznacz cały
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
  static int x = 0;
  if(x = 0)
  {
   Image1->Picture->LoadFromFile("c:\\katalog\\plik_1.bmp");
   x = 1;
  }
else
  {
   Image1->Picture->LoadFromFile("c:\\katalog\\plik_2.bmp");
   x = 0;
  }
}


i już masz zmianę obrazków co 2 sekundy.

CO do tych formularzy, to możesz sterować właściwościami Hide i Show.

Form1->Hide(); // ukrywa formularz
Form1->Show(); // pokazuje formularz

do odmierzania czasu musisz użyć obiektu TTimer.

Re: Wygaszacz ekranu

Nowy postNapisane: niedziela, 2 listopada 2008, 14:31
przez bloodoks
Witam

Dzieki, juz dziala ;)


Pozdrawiam, Damian