Класс 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. На некоторых платформах это происходит, когда пользователь выбирает значок трея с помощью мыши или клавиатуры.
Если установлен SecurityManager, для создания объекта TrayIcon требуется разрешение AWTPermission accessSystemTray. В противном случае конструктор выбросит исключение SecurityException.
См. обзор класса SystemTray, чтобы узнать, как использовать API TrayIcon.
- Implementation Note:
- Когда свойство
apple.awt.enableTemplateImagesустановлено, все изображения, связанные с экземплярами этого класса, обрабатываются как шаблоны в нативной системе рабочего стола. Это означает, что вся информация о цвете отбрасывается, и изображение автоматически адаптируется для отображения при изменении темы рабочего стола и/или цветов. Данное свойство влияет только на MacOSX. - Since:
- 1.6
- See Also:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static enum |
TrayIcon.MessageType |
Тип сообщения определяет, какой значок будет отображён в заголовке сообщения, а также возможный системный звук, который может быть воспроизведён при отображении сообщения. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
TrayIcon |
Создаёт объект TrayIcon с указанным изображением. |
TrayIcon |
Создаёт объект TrayIcon с указанным изображением и текстом всплывающей подсказки. |
TrayIcon |
Создаёт объект TrayIcon с указанным изображением, всплывающей подсказкой и контекстным меню. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addActionListener |
Добавляет указанного слушателя событий действий для получения событий действий от этого TrayIcon. |
void |
addMouseListener |
Добавляет указанного слушателя событий мыши для получения событий мыши от этого TrayIcon. |
void |
addMouseMotionListener |
Добавляет указанного слушателя событий перемещения мыши для получения событий перемещения мыши от этого TrayIcon. |
void |
displayMessage |
Отображает всплывающее сообщение рядом со значком трея. |
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 |
Удаляет указанного слушателя событий действий. |
void |
removeMouseListener |
Удаляет указанного слушателя событий мыши. |
void |
removeMouseMotionListener |
Удаляет указанного слушателя событий перемещения мыши. |
void |
setActionCommand |
Устанавливает имя команды для события действия, генерируемого этим значком трея. |
void |
setImage |
Устанавливает изображение для этого TrayIcon. |
void |
setImageAutoSize |
Устанавливает свойство автоматического размера. |
void |
setPopupMenu |
Устанавливает контекстное меню для этого TrayIcon. |
void |
setToolTip |
Устанавливает строку всплывающей подсказки для этого TrayIcon. |
Подробное описание конструкторов
TrayIcon
public TrayIcon(Image image)
- Параметры:
-
image- используемое изображение - Исключения:
-
IllegalArgumentException- еслиimagenull -
UnsupportedOperationException- если системный трей не поддерживается текущей платформой -
HeadlessException- еслиGraphicsEnvironment.isHeadless()возвращаетtrue -
SecurityException- если разрешениеaccessSystemTrayне предоставлено - См. также:
TrayIcon
public TrayIcon(Image image, String tooltip)
- Параметры:
-
image- используемое изображение -
tooltip- строка, используемая в качестве текста всплывающей подсказки; если значениеnull, подсказка не отображается - Исключения:
-
IllegalArgumentException- еслиimagenull -
UnsupportedOperationException- если системный трей не поддерживается текущей платформой -
HeadlessException- еслиGraphicsEnvironment.isHeadless()возвращаетtrue -
SecurityException- если разрешениеaccessSystemTrayне предоставлено - См. также:
TrayIcon
public TrayIcon(Image image, String tooltip, PopupMenu popup)
- Параметры:
-
image- используемое изображение -
tooltip- строка, используемая в качестве текста всплывающей подсказки; если значениеnull, подсказка не отображается -
popup- меню, используемое для контекстного меню значка трея; если значениеnull, контекстное меню не отображается - Исключения:
-
IllegalArgumentException- еслиimagenull -
UnsupportedOperationException- если системный трей не поддерживается текущей платформой -
HeadlessException- еслиGraphicsEnvironment.isHeadless()возвращаетtrue -
SecurityException- если разрешениеaccessSystemTrayне предоставлено - См. также:
Подробное описание методов
setImage
public void setImage(Image image)
Image.flush() — его необходимо вызвать вручную. Если изображение представляет собой анимированное изображение, оно будет анимироваться автоматически.
См. свойство setImageAutoSize(boolean) для получения подробной информации о размере отображаемого изображения.
Вызов этого метода с тем же изображением, что и в настоящее время используется, не имеет эффекта.
- Параметры:
-
image- используемое непустое изображение - Исключения:
-
NullPointerException- еслиimagenull - См. также:
getImage
public Image getImage()
- Возвращает:
- изображение
- См. также:
setPopupMenu
public void setPopupMenu(PopupMenu popup)
popup null, никакое контекстное меню с этим значком трея не будет связано. Обратите внимание, что этот объект popup не должен быть добавлен в родителя до или после того, как он был установлен на значок трея. Если вы добавите его к некоторому родителю, объект popup может быть удалён из этого родителя.
Контекстное меню можно установить только на один значок системного трея. Установка одного и того же контекстного меню на несколько значков системного трея вызовет IllegalArgumentException.
Примечание: Некоторые платформы могут не поддерживать отображение заданного пользователем контекстного меню при щелчке правой кнопкой мыши по значку трея. В этом случае меню не будет отображаться или на некоторых системах может отображаться родная версия меню.
- Параметры:
-
popup- контекстное меню илиnullдля удаления любого контекстного меню - Исключения:
-
IllegalArgumentException- еслиpopupуже установлено для другого значка системного трея - См. также:
getPopupMenu
public PopupMenu getPopupMenu()
- Возвращает:
- контекстное меню или
null, если его нет - См. также:
setToolTip
public void setToolTip(String tooltip)
null удаляет любой текст подсказки. При отображении строка подсказки может быть усечена на некоторых платформах; количество символов, которые могут быть отображены, зависит от платформы.- Параметры:
-
tooltip- строка подсказки; если значениеnull, подсказка не отображается - См. также:
getToolTip
public String getToolTip()
- Возвращает:
- строка всплывающей подсказки или
null, если её нет - См. также:
setImageAutoSize
public void setImageAutoSize(boolean autosize)
false. Если автоматический размер false, и размер изображения не соответствует месту значка трея, изображение рисуется как есть внутри этого места — если оно больше, чем выделенное место, оно будет обрезано.
Если автоматический размер true, изображение растягивается или уменьшается для соответствия месту значка трея.
- Параметры:
-
autosize-trueдля автоматического изменения размера изображения,falseв противном случае - См. также:
isImageAutoSize
public boolean isImageAutoSize()
- Возвращает:
-
trueесли изображение будет автоматически изменять размер,falseв противном случае - См. также:
addMouseListener
public void addMouseListener(MouseListener listener)
TrayIcon. Вызов этого метода со значением null не оказывает никакого эффекта. Примечание: Координаты MouseEvent (полученные от TrayIcon) относительны к экрану, а не к TrayIcon.
Примечание: События мыши MOUSE_ENTERED и MOUSE_EXITED не поддерживаются.
Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий мыши - See Also:
removeMouseListener
public void removeMouseListener(MouseListener listener)
null или некорректным значением не оказывает никакого эффекта. Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий мыши - See Also:
getMouseListeners
public MouseListener[] getMouseListeners()
TrayIcon.- Returns:
- все зарегистрированные
MouseListenersв этомTrayIconили пустой массив, если обработчики событий мыши не зарегистрированы - See Also:
addMouseMotionListener
public void addMouseMotionListener(MouseMotionListener listener)
TrayIcon. Вызов этого метода со значением null не оказывает никакого эффекта. Примечание: Координаты MouseEvent (полученные от TrayIcon) относительны к экрану, а не к TrayIcon.
Примечание: Событие мыши MOUSE_DRAGGED не поддерживается.
Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий движения мыши - See Also:
removeMouseMotionListener
public void removeMouseMotionListener(MouseMotionListener listener)
null или некорректным значением не оказывает никакого эффекта. Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий движения мыши - See Also:
getMouseMotionListeners
public MouseMotionListener[] getMouseMotionListeners()
TrayIcon.- Returns:
- все зарегистрированные обработчики событий движения
MouseInputListenersв этомTrayIconили пустой массив, если обработчики событий движения мыши не зарегистрированы - See Also:
getActionCommand
public String getActionCommand()
- Returns:
- имя команды действия или
null, если оно не задано - See Also:
setActionCommand
public void setActionCommand(String command)
null.- Parameters:
-
command- строка, используемая для установки имени команды действия значка системного трея. - See Also:
addActionListener
public void addActionListener(ActionListener listener)
TrayIcon. События действия обычно возникают, когда пользователь выбирает значок трея, используя мышь или клавиатуру. Условия, при которых генерируются события действия, зависят от платформы. Вызов этого метода со значением null не оказывает никакого эффекта.
Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий действия - See Also:
removeActionListener
public void removeActionListener(ActionListener listener)
null или некорректным значением не оказывает никакого эффекта. Дополнительную информацию о модели потоков AWT см. в AWT Threading Issues.
- Parameters:
-
listener- обработчик событий действия - See Also:
getActionListeners
public ActionListener[] getActionListeners()
TrayIcon.- Returns:
- все зарегистрированные обработчики событий
ActionListenersв этомTrayIconили пустой массив, если обработчики событий действия не зарегистрированы - See Also:
displayMessage
public void displayMessage(String caption, String text, TrayIcon.MessageType messageType)
ActionEvent. Заголовок или текст могут быть null, но если оба NullPointerException , то будет брошено исключение null. При отображении заголовок или текст могут быть усечены на некоторых платформах; количество отображаемых символов зависит от платформы.
Примечание: Некоторые платформы могут не поддерживать отображение сообщения.
- Parameters:
-
caption- заголовок, отображаемый над текстом, обычно полужирным шрифтом; может бытьnull -
text- текст, отображаемый для конкретного сообщения; может бытьnull -
messageType- перечисление, указывающее тип сообщения - Throws:
-
NullPointerException- если обаcaptionиtextявляютсяnull
getSize
public Dimension getSize()
SystemTray.getTrayIconSize().- Returns:
- размер иконки в пикселях
- See Also:
© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/TrayIcon.html