![]() |
|
#1
|
|||
|
|||
![]() Ребята, как в Delphi 7 сделать бегущую строку на форме (label), чтобы она двигалась слева направо и обратно заранее спасибо
|
#2
|
|||
|
|||
![]() кинь на форму таймер в таймере напиши
Код:
Application.ProcessMessages; label1.left:=label1.Left+1; Последний раз редактировалось Studend, 26.01.2009 в 13:28. |
#3
|
|||
|
|||
![]() Очень просто - с помощью таймера и глобальной переменной (можно переменной класса) - шаг изменения координат.
В таймере изменяешь координаты метки, а при дохождении до границы формы - знак глобальной переменной. |
#4
|
|||
|
|||
![]() это я понял а как чтобы она дошла до конца формы и побежала снова с заданного места то есть слева?
|
#5
|
||||
|
||||
![]() Чтобы проверить, достигла ли строка края формы, можно просто сравнивать положение лейбла (Left) плюс его ширина (Width) с шириной формы.
|
#6
|
|||
|
|||
![]() А примерчик можно буду весьма благодарен
|
#7
|
|||
|
|||
![]() Вот чтото выйшло у меня =) Я сам начинающий, мне 14 и я недавно начал учить делфи.
Кидаеш таймер и Label1. Потом для таймера прописываеш: Код:
procedure TForm1.Timer1Timer(Sender: TObject); begin label1.left:=label1.Left+1; if Label1.Left > Form1.width then Label1.Left := Label1.Left-(Form1.width+Label1.Width); end; Вот тебе и наоборот как ты просил! Код:
procedure TForm1.Timer1Timer(Sender: TObject); begin label1.left:=label1.Left-1; if Label1.Left = -Label1.Width then Label1.Left := Form1.width+Label1.Width; end; Последний раз редактировалось GraffyM, 30.01.2009 в 17:40. |