Мигание надписей?

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
Dees
Сообщения: 7
Зарегистрирован: 05 ноя 2006, 12:16

Подскажите пожалуйста, как в Delphi реализовать мигание надписи (Label) на форме при помощи компонента Timer? Как задать период этих миганий и их количество? :?: (1 мигание – это 1 исчезновение и одно появление надписи).
Заранее благодарю за помощь.
maelz
Сообщения: 47
Зарегистрирован: 10 сен 2005, 18:45

timer1.interval:=1000 (задержка в мс: 1000мс=1 секунде)

begin
if label1.visible=true then label1.visible=false
else label1.visible:=true;
end;
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Не лучше меняй цвет фона надписи, при этом сделай флаг и в зависимости от него переключай...
Dees
Сообщения: 7
Зарегистрирован: 05 ноя 2006, 12:16

Хорошо. А как задать количество миганий? Если через FOR, то как и где его прописывать?... :?
Аватара пользователя
Duncon
Сообщения: 2085
Зарегистрирован: 10 окт 2004, 14:11
Откуда: Питер
Контактная информация:

Всмысле количество, у тебя таймер и он будет каждую секунду выполнять процедуру (пока не отключишь)..
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

maelz,
label1.visible := not label1.visible;

;)
Изображение
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

А как задать количество миганий? Если через FOR, то как и где его прописывать?...
В обработчике OnTimer напишите в начале

Dec(Timer1.Tag);
If Timer1.Tag=0 then Timer1.Enadble=false;

Теперь для запуска таймера делайте:

Timer1.Tag=N;
Timer1.Enadble=true;
Dees
Сообщения: 7
Зарегистрирован: 05 ноя 2006, 12:16

Dec(Timer1.Tag);
Не знаю, что неправильно, но пишет что в
Dec(Timer1.Tag); - Left side cannot be assigned to
:( Dec - это уменьшение значения Timer1.Tag на единицу, на сколько я понимаю?
Dees
Сообщения: 7
Зарегистрирован: 05 ноя 2006, 12:16

Все, решение уже нашел. Всем спасибо, тема закрыта.
Ответить