![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Анимированный Gif в SysTray [D6, WinXP]
shelest © (2002-07-10 11:42:00)Как заменить иконку в SysTray на анимированный GIF?
Пример The Bat.
tsarevep (2002-07-10 14:03:00) [1]Если тебе нужно как в TheBat"e
Вот из FAQ
Увидев анимацию на форме, мы не удивимся, но сейчас нам предстоит освоить более сложную технологию: мы попытаемся анимировать иконку приложения, ту самую, которая находится на панели задач на кнопке нашего exe-файла!
Сначала нужно будет создать каждый кадр потенциального анимационного клипа. Для этого запустим утилиту "Image Editor", которая в ходит в стандартный пакет Delphi. Запустить её можно одноимённой командой из меню Tools[инструменты]. Там создаём несколько bmp-файлов размером 16х16.
После чего возвращаемся в Delphi и выносим на форму компонент класса TImageList, дважды щёлкаем на нём и с помощью кнопки Add последовательно добавляем созданные кадры. В каком порядке изображения будут добавляться, в таком же порядке они затем будут выводится.
Далее выносим таймер[Timer], его свойство Interval устанавливаем в нужное значение[например - 5], и именно через заданное здесь количество миллисекунд будут меняться кадры. По событию OnTimer пишем такой код:
ImageList1.GetIcon(iconindex,Application.icon);
iconindex:=iconindex+1;
if iconindex>5 then iconindex:=0;
В строке [if iconindex>5 then iconindex:=0;] число 5 замените на индекс последней иконки в вашем ImageList"e[это количество иконок -1]
Не забудьте объявить глобальную переменную iconindex, которая должна быть целочисленного типа[integer]
А по созданию окна инициализируйте иконку приложения первым изображением в списке:
iconindex:=0;
ImageList1.GetIcon(iconindex,Application.icon);
Посмотрите на иконку программы ACDSee, которая показана в левом верхнем углу. На ней изображён глаз. По-моему, было бы довольно эффектно, если бы время от времени он подмигивал пользователю!
Сам не пробывал.
Ну а если в трей иконку уж компонентов куча!!!!!!!!!
Tornado (2002-07-10 11:53:00) [2]не знаю как на анимированный GIF, но есть такой компонент TrayIcon, он позволяет делать анимацию, просто втыкаешь в него несколько картинок (например через Imagelist) и он их будет показывать друг за другом, что и создаст эффект анимации (хотя GIF работает точно также - набор картинок, сменяющихся с равным промежутком времени). В БАТЕ я думаю используется тоже самое.
Kaban (2002-07-10 11:51:00) [3]так там не анимированный gif, там просто в потоке или по таймеру (я уж не знаю как) обновляется иконка
Opuhshii (2002-07-10 11:51:00) [4]меняй иконку сам,... в трее imho только BITMAP