Spec-Zone.ru › OpenJDK 25

Класс TrayIcon

java.lang.Object
java.awt.TrayIcon
public class TrayIcon extends Object
Объект TrayIcon представляет значок в системном лотке, который можно добавить в system tray. Объект TrayIcon может иметь всплывающую подсказку (текст), изображение, всплывающее меню и набор связанных с ним слушателей.

Объект TrayIcon может генерировать различные MouseEvents и поддерживает добавление соответствующих слушателей для получения уведомлений об этих событиях. TrayIcon самостоятельно обрабатывает некоторые события. Например, по умолчанию при щелчке правой кнопкой мыши по TrayIcon отображается указанное всплывающее меню. Когда указатель мыши находится над TrayIcon, отображается всплывающая подсказка (это поведение зависит от платформы).

Примечание: При отправке MouseEvent зарегистрированным слушателям его свойству component будет присвоено значение null. (См. ComponentEvent.getComponent()) Свойству source будет присвоено значение этого TrayIcon. (См. EventObject.getSource())

Примечание: Корректная реализация TrayIcon назначит разные жесты для отображения всплывающего меню и выбора значка в системном лотке.

Объект TrayIcon может генерировать ActionEvent. На некоторых платформах это происходит, когда пользователь выбирает значок в системном лотке с помощью мыши или клавиатуры.

Обзор класса SystemTray содержит пример использования API TrayIcon.

Примечание по реализации:
Если задано свойство apple.awt.enableTemplateImages, все изображения, связанные с экземплярами этого класса, рассматриваются встроенной системой рабочего стола как шаблонные изображения. Это означает, что вся информация о цвете отбрасывается, а изображение автоматически адаптируется для отображения при изменении темы и/или цветов рабочего стола. Это свойство влияет только на MacOSX.
С версии:
1.6
См. также:
  • SystemTray.add(TrayIcon)
  • ComponentEvent.getComponent()
  • EventObject.getSource()

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static enum  TrayIcon.MessageType
Тип сообщения определяет, какой значок будет отображаться в заголовке сообщения, а также возможный системный звук, который может сопровождать показ сообщения.

Краткое описание конструкторов

Конструктор Описание
TrayIcon(Image image)
Создает TrayIcon с указанным изображением.
TrayIcon(Image image, String tooltip)
Создает TrayIcon с указанным изображением и текстом всплывающей подсказки.
TrayIcon(Image image, String tooltip, PopupMenu popup)
Создает TrayIcon с указанным изображением, всплывающей подсказкой и всплывающим меню.

Краткое описание методов

Модификатор и тип Метод Описание
void addActionListener(ActionListener listener)
Добавляет указанный слушатель действий для получения событий ActionEvent от этого TrayIcon.
void addMouseListener(MouseListener listener)
Добавляет указанный слушатель мыши для получения событий мыши от этого TrayIcon.
void addMouseMotionListener(MouseMotionListener listener)
Добавляет указанный слушатель мыши для получения событий перемещения мыши от этого TrayIcon.
void displayMessage(String caption, String text, TrayIcon.MessageType messageType)
Отображает всплывающее сообщение рядом со значком в системном лотке.
String getActionCommand()
Возвращает имя команды для события действия, инициированного этим значком в системном лотке.
ActionListener[] getActionListeners()
Возвращает массив всех слушателей действий, зарегистрированных для этого TrayIcon.
Image getImage()
Возвращает текущее изображение, используемое для этого TrayIcon.
MouseListener[] getMouseListeners()
Возвращает массив всех слушателей мыши, зарегистрированных для этого TrayIcon.
MouseMotionListener[] getMouseMotionListeners()
Возвращает массив всех слушателей перемещения мыши, зарегистрированных для этого TrayIcon.
PopupMenu getPopupMenu()
Возвращает всплывающее меню, связанное с этим TrayIcon.
Dimension getSize()
Возвращает размер в пикселях пространства, занимаемого значком в системном лотке.
String getToolTip()
Возвращает строку всплывающей подсказки, связанную с этим TrayIcon.
boolean isImageAutoSize()
Возвращает значение свойства автоматического изменения размера.
void removeActionListener(ActionListener listener)
Удаляет указанный слушатель действий.
void removeMouseListener(MouseListener listener)
Удаляет указанный слушатель мыши.
void removeMouseMotionListener(MouseMotionListener listener)
Удаляет указанный слушатель перемещения мыши.
void setActionCommand(String command)
Задает имя команды для события действия, инициированного этим значком в системном лотке.
void setImage(Image image)
Задает изображение для этого TrayIcon.
void setImageAutoSize(boolean autosize)
Задает свойство автоматического изменения размера.
void setPopupMenu(PopupMenu popup)
Задает всплывающее меню для этого TrayIcon.
void setToolTip(String tooltip)
Задает строку всплывающей подсказки для этого TrayIcon.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

TrayIcon

public TrayIcon(Image image)
Создаёт TrayIcon с указанным изображением.
Параметры:
image — Image, которое будет использоваться
Исключения:
IllegalArgumentException — если image равно null
UnsupportedOperationException — если системный трей не поддерживается текущей платформой
HeadlessException — если GraphicsEnvironment.isHeadless() возвращает true
См. также:
  • SystemTray.add(TrayIcon)
  • TrayIcon(Image, String, PopupMenu)
  • TrayIcon(Image, String)

TrayIcon

public TrayIcon(Image image, String tooltip)
Создаёт TrayIcon с указанным изображением и текстом всплывающей подсказки. На некоторых платформах всплывающая подсказка может быть невидимой.
Параметры:
image — Image, которое будет использоваться
tooltip — строка, используемая в качестве текста всплывающей подсказки; если значение равно null, подсказка не отображается
Исключения:
IllegalArgumentException — если image равно null
UnsupportedOperationException — если системный трей не поддерживается текущей платформой
HeadlessException — если GraphicsEnvironment.isHeadless() возвращает true
См. также:
  • SystemTray.add(TrayIcon)
  • TrayIcon(Image)
  • TrayIcon(Image, String, PopupMenu)

TrayIcon

public TrayIcon(Image image, String tooltip, PopupMenu popup)
Создаёт TrayIcon с указанными изображением, всплывающей подсказкой и всплывающим меню. На некоторых платформах всплывающая подсказка может быть невидимой.
Параметры:
image — Image, которое будет использоваться
tooltip — строка, используемая в качестве текста всплывающей подсказки; если значение равно null, подсказка не отображается
popup — меню, используемое как всплывающее меню значка в системном трее; если значение равно null, всплывающее меню не отображается
Исключения:
IllegalArgumentException — если image равно null
UnsupportedOperationException — если системный трей не поддерживается текущей платформой
HeadlessException — если GraphicsEnvironment.isHeadless() возвращает true
См. также:
  • SystemTray.add(TrayIcon)
  • TrayIcon(Image, String)
  • TrayIcon(Image)
  • PopupMenu
  • MouseListener
  • addMouseListener(MouseListener)

Подробное описание методов

setImage

public void setImage(Image image)
Задаёт изображение для этого TrayIcon. Предыдущее изображение значка в системном трее отбрасывается без вызова метода Image.flush() — его необходимо вызвать вручную.

Если изображение является анимированным, оно будет анимироваться автоматически.

Подробнее о размере отображаемого изображения см. в описании свойства setImageAutoSize(boolean).

Вызов этого метода с тем же изображением, которое используется в данный момент, не оказывает никакого эффекта.

Параметры:
image — используемое ненулевое Image
Исключения:
NullPointerException — если image равно null
См. также:
  • getImage()
  • Image
  • SystemTray.add(TrayIcon)
  • TrayIcon(Image, String)

getImage

public Image getImage()
Возвращает текущее изображение, используемое для этого TrayIcon.
Возвращает:
изображение
См. также:
  • setImage(Image)
  • Image

setPopupMenu

public void setPopupMenu(PopupMenu popup)
Задаёт всплывающее меню для этого TrayIcon. Если popup равно null, с этим TrayIcon не будет связано всплывающее меню.

Обратите внимание: этот popup нельзя добавлять к какому-либо родительскому элементу до или после его назначения значку в системном трее. Если добавить его к родительскому элементу, popup может быть удалён из этого родительского элемента.

popup можно назначить только одному TrayIcon. Назначение одного и того же всплывающего меню нескольким TrayIcon приведёт к IllegalArgumentException.

Примечание: Некоторые платформы могут не поддерживать отображение заданного пользователем компонента всплывающего меню при щелчке правой кнопкой мыши по значку в системном трее. В этом случае меню либо не отображается, либо в некоторых системах отображается его встроенная версия.

Параметры:
popup — PopupMenu или null для удаления всплывающего меню
Исключения:
IllegalArgumentException — если popup уже назначено другому TrayIcon
См. также:
  • getPopupMenu()

getPopupMenu

public PopupMenu getPopupMenu()
Возвращает всплывающее меню, связанное с этим TrayIcon.
Возвращает:
всплывающее меню или null, если меню отсутствует
См. также:
  • setPopupMenu(PopupMenu)

setToolTip

public void setToolTip(String tooltip)
Задаёт текст всплывающей подсказки для этого TrayIcon. Подсказка автоматически отображается, когда указатель мыши находится над значком. На некоторых платформах всплывающая подсказка может быть невидимой. Установка значения null удаляет текст подсказки. При отображении текст подсказки может быть усечён на некоторых платформах; допустимое количество отображаемых символов зависит от платформы.
Параметры:
tooltip — строка для всплывающей подсказки; если значение равно null, подсказка не отображается
См. также:
  • getToolTip()

getToolTip

public String getToolTip()
Возвращает текст всплывающей подсказки, связанной с этим TrayIcon.
Возвращает:
текст всплывающей подсказки или null, если подсказка отсутствует
См. также:
  • setToolTip(String)

setImageAutoSize

public void setImageAutoSize(boolean autosize)
Задаёт свойство автоматического изменения размера. Оно определяет, изменяется ли размер изображения значка в системном трее автоматически, чтобы соответствовать выделенному для изображения пространству. По умолчанию свойство автоматического изменения размера имеет значение false.

Если автоматическое изменение размера имеет значение false, а размер изображения не соответствует пространству значка в системном трее, изображение выводится без изменений внутри этого пространства — если оно больше выделенной области, изображение будет обрезано.

Если автоматическое изменение размера имеет значение true, изображение растягивается или сжимается, чтобы соответствовать пространству значка в системном трее.

Параметры:
autosize — true для автоматического изменения размера изображения, в противном случае false
См. также:
  • isImageAutoSize()

isImageAutoSize

public boolean isImageAutoSize()
Возвращает значение свойства автоматического изменения размера.
Возвращает:
true, если размер изображения будет изменён автоматически, в противном случае false
См. также:
  • setImageAutoSize(boolean)

addMouseListener

public void addMouseListener(MouseListener listener)
Добавляет указанный прослушиватель мыши для получения событий мыши от этого TrayIcon. Вызов этого метода со значением null не оказывает никакого эффекта.

Примечание: координаты MouseEvent (получаемые из TrayIcon) отсчитываются относительно экрана, а не TrayIcon.

Примечание: События мыши MOUSE_ENTERED и MOUSE_EXITED не поддерживаются.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель мыши
См. также:
  • MouseEvent
  • MouseListener
  • removeMouseListener(MouseListener)
  • getMouseListeners()

removeMouseListener

public void removeMouseListener(MouseListener listener)
Удаляет указанный прослушиватель мыши. Вызов этого метода со значением null или недопустимым значением не оказывает никакого эффекта.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель мыши
См. также:
  • MouseEvent
  • MouseListener
  • addMouseListener(MouseListener)
  • getMouseListeners()

getMouseListeners

public MouseListener[] getMouseListeners()
Возвращает массив всех прослушивателей мыши, зарегистрированных для этого TrayIcon.
Возвращает:
все MouseListeners, зарегистрированные для этого TrayIcon, либо пустой массив, если в данный момент не зарегистрировано ни одного прослушивателя мыши
См. также:
  • addMouseListener(MouseListener)
  • removeMouseListener(MouseListener)
  • MouseListener

addMouseMotionListener

public void addMouseMotionListener(MouseMotionListener listener)
Добавляет указанный прослушиватель мыши для получения событий движения мыши от этого TrayIcon. Вызов этого метода со значением null не оказывает никакого эффекта.

Примечание: координаты MouseEvent (получаемые из TrayIcon) отсчитываются относительно экрана, а не TrayIcon.

Примечание: Событие мыши MOUSE_DRAGGED не поддерживается.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель мыши
См. также:
  • MouseEvent
  • MouseMotionListener
  • removeMouseMotionListener(MouseMotionListener)
  • getMouseMotionListeners()

removeMouseMotionListener

public void removeMouseMotionListener(MouseMotionListener listener)
Удаляет указанный прослушиватель движения мыши. Вызов этого метода со значением null или недопустимым значением не оказывает никакого эффекта.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель мыши
См. также:
  • MouseEvent
  • MouseMotionListener
  • addMouseMotionListener(MouseMotionListener)
  • getMouseMotionListeners()

getMouseMotionListeners

public MouseMotionListener[] getMouseMotionListeners()
Возвращает массив всех прослушивателей движения мыши, зарегистрированных для этого TrayIcon.
Возвращает:
все MouseInputListeners, зарегистрированные для этого TrayIcon, либо пустой массив, если в данный момент не зарегистрировано ни одного прослушивателя мыши
См. также:
  • addMouseMotionListener(MouseMotionListener)
  • removeMouseMotionListener(MouseMotionListener)
  • MouseMotionListener

getActionCommand

public String getActionCommand()
Возвращает имя команды события действия, генерируемого этим значком в системном трее.
Возвращает:
имя команды действия или null, если оно отсутствует
См. также:
  • addActionListener(ActionListener)
  • setActionCommand(String)

setActionCommand

public void setActionCommand(String command)
Задаёт имя команды для события действия, генерируемого этим значком в системном трее. По умолчанию этой команде действия присваивается значение null.
Параметры:
command — строка, используемая для задания команды действия значка в системном трее.
См. также:
  • ActionEvent
  • addActionListener(ActionListener)
  • getActionCommand()

addActionListener

public void addActionListener(ActionListener listener)
Добавляет указанный прослушиватель действий для получения ActionEvent от этого TrayIcon. События действий обычно возникают, когда пользователь выбирает значок в системном трее с помощью мыши или клавиатуры. Условия, при которых генерируются события действий, зависят от платформы.

Вызов этого метода со значением null не оказывает никакого эффекта.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель действий
См. также:
  • removeActionListener(ActionListener)
  • getActionListeners()
  • ActionListener
  • setActionCommand(String)

removeActionListener

public void removeActionListener(ActionListener listener)
Удаляет указанный прослушиватель действий. Вызов этого метода со значением null или недопустимым значением не оказывает никакого эффекта.

Сведения о модели многопоточности AWT см. в разделе Проблемы многопоточности AWT.

Параметры:
listener — прослушиватель действий
См. также:
  • ActionEvent
  • ActionListener
  • addActionListener(ActionListener)
  • getActionListeners()
  • setActionCommand(String)

getActionListeners

public ActionListener[] getActionListeners()
Возвращает массив всех прослушивателей действий, зарегистрированных для этого TrayIcon.
Возвращает:
все ActionListeners, зарегистрированные для этого TrayIcon, либо пустой массив, если в данный момент не зарегистрировано ни одного прослушивателя действий
См. также:
  • addActionListener(ActionListener)
  • removeActionListener(ActionListener)
  • ActionListener

displayMessage

public void displayMessage(String caption, String text, TrayIcon.MessageType messageType)
Отображает всплывающее сообщение рядом со значком в системном трее. Сообщение исчезнет через некоторое время или после щелчка пользователя по нему. Щелчок по сообщению может вызвать ActionEvent.

Заголовок или текст могут иметь значение null, однако если оба имеют значение null, будет выброшено NullPointerException. При отображении заголовок или текст могут быть усечены на некоторых платформах; допустимое количество отображаемых символов зависит от платформы.

Примечание: Некоторые платформы могут не поддерживать отображение сообщений.

Параметры:
caption — заголовок, отображаемый над текстом, обычно полужирным шрифтом; может иметь значение null
text — текст конкретного сообщения; может иметь значение null
messageType — перечисление, указывающее тип сообщения
Исключения:
NullPointerException — если и caption, и text имеют значение null

getSize

public Dimension getSize()
Возвращает размер в пикселях пространства, занимаемого значком в системном трее. Для значка, ещё не добавленного в системный трей, возвращаемый размер равен результату вызова SystemTray.getTrayIconSize().
Возвращает:
размер значка в системном трее в пикселях
См. также:
  • setImageAutoSize(boolean)
  • Image
  • getSize()

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и правилами распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/TrayIcon.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API