| Пакет | flash.desktop |
| Класс | public class DockIcon |
| Наследование | DockIcon InteractiveIcon Icon EventDispatcher Object |
| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0 |
Поддержка в профилях AIR: эта функция поддерживается во всех компьютерных операционных системах, но не поддерживается на мобильных устройствах или в среде AIR для телевизионных устройств. Используйте свойство NativeApplication.supportsDockIcon, чтобы проверить наличие поддержки в среде выполнения. Дополнительные сведения о поддержке API-интерфейса в разных профилях см. в разделе «Поддержка в профилях AIR».
Класс DockIcon можно использовать для изменения внешнего вида стандартных значков, например, для анимации значка или добавления информационных изображений. Вы также можете добавлять элементы в меню значка панели. Все добавленные элементы отображаются над стандартными элементами меню.
Невозможно создать экземпляр класса DockIcon. Объект, отвечающий за значок панели операционной системы, находится в NativeApplication.icon.
Поддержка значков панелей присутствуют не во всех операционных системах. Выполните проверку NativeApplication.supportsDockIcon, чтобы узнать, поддерживает ли текущая ОС значки панелей. Есть такая поддержка существует, то свойство NativeApplication.icon является типом класса DockIcon. В противном случае тип NativeApplication.icon является другим подклассом класса InteractiveIcon (обычно SystemTrayIcon).
Важно! Попытка применить метод класса DockIcon к объекту NativeApplication.icon в ОС, где AIR не обеспечивает поддержку работы со значками панелей, приводит к ошибке.
Связанные элементы API
flash.desktop.NativeApplication.supportsDockIcon
flash.desktop.SystemTrayIcon
| Свойство | Определено | ||
|---|---|---|---|
| bitmaps : Array [переопределить]
Изображение значка в массиве объектов BitmapData различных размеров. | DockIcon | ||
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
| height : int [переопределить] [только для чтения]
Текущее значение высоты значка в пикселях. | DockIcon | ||
| menu : NativeMenu
Системное меню данного значка панели. | DockIcon | ||
| width : int [переопределить] [только для чтения]
Текущее значение ширины значка в пикселях. | DockIcon | ||
| Метод | Определено | ||
|---|---|---|---|
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | |
Уведомляет пользователя о событии, требующем его внимания. | DockIcon | ||
![]() |
Посылает событие в поток событий. | EventDispatcher | |
![]() |
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
![]() |
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher | |
bitmaps | свойство |
bitmaps:Array[переопределить] | Версии среды выполнения: | AIR 1.0 |
Изображение значка в массиве объектов BitmapData различных размеров.
При отображении значка в контексте конкретной ОС из массива выбирается изображение, размер которого в максимальной степени подходит под текущий размер экрана (при необходимости масштабируется). Обычные размеры включают: 16x16, 32x32, 48x48 и 128x128. (В ближайшем будущем в некоторых ОС могут использоваться значки размером 512x512 пикселей.)
В некоторых контекстах, если свойству bitmaps ничего присвоено не было, может использоваться значок ОС по умолчанию. В остальных контекстах значок не отображается.
Чтобы изменить вид значка, присвойте свойству bitmaps массив объектов BitmapData.
icon.bitmaps = new Array(icon16x16.bitmapData, icon128x128.bitmapData);
Прямая модификация массива bitmaps ни к чему не приведет.
Чтобы убрать изображение значка, присвойте свойству bitmaps пустой массив.
Примечание. Загружайте файлы изображений для значков в формате PNG, так как этот формат обеспечивает наилучшее альфа-смешивание. Формат GIF поддерживает только включение или отключение прозрачности, но не смешивание. Формат JPG не поддерживает прозрачность совсем.
Реализация
override public function get bitmaps():Array override public function set bitmaps(value:Array):void height | свойство |
height:int [только для чтения] [переопределить] | Версии среды выполнения: | AIR 1.0 |
Текущее значение высоты значка в пикселях.
Некоторые контексты значков поддерживают динамические размеры. Свойство height обозначает высоту значка, выбранного из массива bitmaps для данного контекста. Если в ОС было использовано масштабирование, то текущее значение высоты может отличаться.
Реализация
override public function get height():int menu | свойство |
menu:NativeMenu| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0 |
Системное меню данного значка панели.
Все элементы меню отображаются над стандартными элементами. Стандартные элементы невозможно изменить или удалить.
Реализация
public function get menu():NativeMenu public function set menu(value:NativeMenu):voidПример ( Использование этого примера )
import flash.desktop.NativeApplication;
import flash.events.Event;
private function createDockIconMenu():void{
if(NativeApplication.supportsDockIcon){
var dockIcon:DockIcon = NativeApplication.nativeApplication.icon as DockIcon;
var dockMenu:NativeMenu = new NativeMenu();
var command:NativeMenuItem = dockMenu.addItem(new NativeMenuItem("Command"));
command.addEventListener(Event.SELECT, onCommand);
dockIcon.menu = dockMenu;
}
}
private function onCommand(event:Event):void{
//do command...
}
width | свойство |
width:int [только для чтения] [переопределить] | Версии среды выполнения: | AIR 1.0 |
Текущее значение ширины значка в пикселях.
Некоторые контексты значков поддерживают динамические размеры. Свойство width обозначает ширину значка, выбранного из массива bitmaps для данного контекста. Если в ОС было использовано масштабирование, то текущее значение ширины может отличаться.
Реализация
override public function get width():intbounce | () | метод |
public function bounce(priority:String = "informational"):void| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0 |
Уведомляет пользователя о событии, требующем его внимания.
Вызов этого метода приводит к колебанию значка панели только тогда, когда приложение работает в фоновом режиме. Если значением priority является NotificationType.Informational, то значок колеблется только один раз. Если значением priority является NotificationType.Critical, то значок колеблется до тех пор, пока приложение не станет активным.
Параметры
priority:String (default = "informational") — Срочность колебания панели.
|
Связанные элементы API
Пример ( Использование этого примера )
import flash.display.DockIcon;
import flash.display.NotificationType;
import flash.desktop.NativeApplication;
if(NativeApplication.supportsDockIcon){
var dockIcon:DockIcon = NativeApplication.nativeApplication.icon As DockIcon;
dockIcon.bounce(NotificationType.CRITICAL);
}
package {
import flash.desktop.DockIcon;
import flash.desktop.NativeApplication;
import flash.display.Loader;
import flash.display.NativeMenu;
import flash.display.NativeMenuItem;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.net.URLRequest;
import flash.utils.Timer;
public class AnimatedDockIcon extends Sprite
{
private var imageURLs:Array = ['gfx/frame01.png',
'gfx/frame02.png',
'gfx/frame03.png',
'gfx/frame04.png'];
private var images:Array = new Array();
private var animTimer:Timer = new Timer(100);
public function AnimatedDockIcon()
{
NativeApplication.nativeApplication.autoExit = false;
addEventListener(Event.COMPLETE, loadImages);
loadImages();
animTimer.addEventListener(TimerEvent.TIMER,advanceFrame);
addMenu();
stage.nativeWindow.close();
}
private function addMenu():void{
var menu:NativeMenu = new NativeMenu();
var start:NativeMenuItem = menu.addItem(new NativeMenuItem("Start animation"));
var stop:NativeMenuItem = menu.addItem(new NativeMenuItem("Stop animation"));
start.addEventListener(Event.SELECT, startTimer);
stop.addEventListener(Event.SELECT, stopTimer);
var dockIcon:DockIcon = NativeApplication.nativeApplication.icon as DockIcon;
dockIcon.menu = menu;
}
private function startTimer(event:Event):void{
animTimer.start();
}
private function stopTimer(event:Event):void{
animTimer.stop();
}
private var currentFrame:int = 0;
private function advanceFrame(event:Event):void{
if(currentFrame < images.length){
currentFrame++;
} else {
currentFrame = 0;
}
NativeApplication.nativeApplication.icon.bitmaps = [images[currentFrame]];
}
private function loadImages(event:Event = null):void{
if(event != null){
images.push(event.target.content.bitmapData);
}
if(imageURLs.length > 0){
var urlString:String = imageURLs.pop();
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadImages, false, 0, true);
loader.load(new URLRequest(urlString));
} else {
var complete:Event = new Event(Event.COMPLETE,false,false);
dispatchEvent(complete);
}
}
}
}
Tue Jun 12 2018, 11:34 AM Z
Скрыть унаследованные общедоступные свойства
Показать унаследованные общедоступные свойства