Przelatujący tekst na formie

robiko

Jak zrobić efekt przesuwającego się napisu , to pytanie nurtowało mnie aż dwie minuty , gdyż myślałem jak można zrobić to w łatwy sposób . Tak sobie myślę aż tu nagle przebłysk , a może wykorzystał by Timera i labela , no tak przecież możemy postawić labela na formie , a więc przesuwając w taki sposób np . wpisać w labela top= 10 i dodawać to tego jeden czy tam dwa to wtedy label będzie się przesuwał coraz wyżej i wyżej , możemy też zrobić aby przesuwał się w lewo wykorzystując left lub w prawo wykorzystując right . Więc do dzieła wstawiamy na formę timera w interval wpisujemy najlepiej 10 , potem stawiamy labela wpisujemy w pole caption jakiś ładny tekścik , i klikamy w obsługę timera ( procedura ONTIMER ) wpisujemy :

label1.Top:=label1.Top+3; // wtedy tekścik będzie latał do góry . - tym najlepiej operować .
label1.top := label1.top - 3 // w dół
label1.left:=label1.left-3; // w lewo.
label1.left:=label1.left+3; //w prawo.

O i najlepiej by było aby ustawić właściwości borderstyle formy na bsToolWindow .

To by było na tyle . Ale wyczerpujący ten tut , nieprawdaż . Ale prosty sposób na zrobienie przesuwających się napisów .

Pozdrawiam robiko@op.pl

A tutaj sposób na "zapętlenie" tekstu, żęby nie znikał nam ;]

  if label1.Left = 0 - label1.Width  then
    label1.Left := form1.Width
  else
    label1.Left := label1.Left - 1;

Teraz gdy label całkiem nam się schowa, to zostanie przeniesiony na drugą stronę formy. Fajnie to wygląda ^^.
LeonThePunisher

6 komentarzy

mało niekonkretnie :( zły pomysł

może by tak dopisać jak to zapetlic zeby teks te latal w kolo macieju ?

o matko : label1.right:=label1.left+3; //w prawo . - BUAHAAHHA!!

jeeeeeej nic dodac nic ując

a jest wogóle coś takiego jak Label1.Right ??????
:D...
---->label1.left:=label1.left+3; // w lewo <-----
i chyba jak w lewo to Label1.Left -3; ;)

Używaj znaczników < delphi i </ delphi > do pisania kodu !! !!

Poza tym jak uważasz że to się przyda to wrzuć to do FAQ