Spec-Zone.ru › OpenJDK 24

Класс Desktop

java.lang.Object
java.awt.Desktop
public class Desktop extends Object
Класс Desktop позволяет взаимодействовать с различными возможностями рабочего стола.

Поддерживаемые операции включают в себя:

  • запуск стандартного браузера для отображения указанного URI;
  • запуск стандартного почтового клиента с необязательным mailto URI;
  • запуск зарегистрированного приложения для открытия, редактирования или печати указанного файла.

Этот класс предоставляет методы, соответствующие этим операциям. Методы ищут связанное приложение, зарегистрированное в текущей платформе, и запускают его для обработки URI или файла. Если связанного приложения нет или связанное приложение не удается запустить, генерируется исключение. См. Desktop.Action для полного списка поддерживаемых операций и возможностей.

Приложение регистрируется для URI или типа файла. Механизм регистрации, доступа и запуска связанного приложения зависит от платформы.

Каждая операция представляет собой тип действия, представленный классом Desktop.Action.

Примечание: при вызове какой-либо операции и запуске связанного приложения, оно будет запущено на той же системе, на которой запущено приложение Java.

С момента:
1.6
См. также:
  • Desktop.Action

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

Модификатор и тип Класс Описание
static enum  Desktop.Action
Представляет тип действия.

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

Модификатор и тип Метод Описание
void addAppEventListener(SystemEventListener listener)
Добавляет подтипы SystemEventListener для прослушивания уведомлений из родной системы.
void browse(URI uri)
Запускает стандартный браузер для отображения URI.
void browseFileDirectory(File file)
Открывает папку, содержащую file, и выбирает её в стандартном файловом менеджере системы.
void disableSuddenTermination()
Предотвращает внезапное завершение работы этого приложения.
void edit(File file)
Запускает связанное приложение-редактор и открывает файл для редактирования.
void enableSuddenTermination()
Разрешает внезапное завершение работы этого приложения.
static Desktop getDesktop()
Возвращает экземпляр Desktop текущего контекста рабочего стола.
static boolean isDesktopSupported()
Проверяет, поддерживается ли этот класс в текущей платформе.
boolean isSupported(Desktop.Action action)
Проверяет, поддерживается ли действие в текущей платформе.
void mail()
Запускает окно составления письма стандартного почтового клиента.
void mail(URI mailtoURI)
Запускает окно составления письма стандартного почтового клиента, заполняя поля сообщения, указанные в mailto: URI.
boolean moveToTrash(File file)
Перемещает указанный файл в корзину.
void open(File file)
Запускает связанное приложение для открытия файла.
void openHelpViewer()
Открывает приложение-просмотрщик справки родной системы.
void print(File file)
Печатает файл с помощью родной утилиты печати рабочего стола, используя команду печати связанного приложения.
void removeAppEventListener(SystemEventListener listener)
Удаляет подтипы SystemEventListener для прослушивания уведомлений из родной системы.
void requestForeground(boolean allWindows)
Запрашивает переключение этого приложения на передний план.
void setAboutHandler(AboutHandler aboutHandler)
Устанавливает обработчик для отображения пользовательского окна "О программе" для вашего приложения.
void setDefaultMenuBar(JMenuBar menuBar)
Устанавливает стандартную строку меню для использования, когда нет активных фреймов.
void setOpenFileHandler(OpenFilesHandler openFileHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено открыть список файлов.
void setOpenURIHandler(OpenURIHandler openURIHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено открыть URL.
void setPreferencesHandler(PreferencesHandler preferencesHandler)
Устанавливает обработчик для отображения пользовательского окна "Настройки" для вашего приложения.
void setPrintFileHandler(PrintFilesHandler printFileHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено распечатать список файлов.
void setQuitHandler(QuitHandler quitHandler)
Устанавливает обработчик, определяющий, следует ли завершить приложение.
void setQuitStrategy(QuitStrategy strategy)
Устанавливает стандартную стратегию завершения работы этого приложения.

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

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

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

getDesktop

public static Desktop getDesktop()
Возвращает экземпляр Desktop текущего контекста рабочего стола. На некоторых платформах API рабочего стола может быть не поддерживается; используйте метод isDesktopSupported(), чтобы определить, поддерживается ли текущий рабочий стол.
Возвращает:
экземпляр Desktop
Исключение:
HeadlessException - если GraphicsEnvironment.isHeadless() возвращает true
UnsupportedOperationException - если этот класс не поддерживается на текущей платформе
См. также:
  • isDesktopSupported()
  • GraphicsEnvironment.isHeadless()

isDesktopSupported

public static boolean isDesktopSupported()
Проверяет, поддерживается ли этот класс на текущей платформе. Если поддерживается, используйте getDesktop() для получения экземпляра.
Возвращает:
true, если этот класс поддерживается на текущей платформе; false в противном случае
См. также:
  • getDesktop()

isSupported

public boolean isSupported(Desktop.Action action)
Проверяет, поддерживается ли действие на текущей платформе.

Даже если платформа поддерживает действие, у файла или URI может не быть зарегистрированного приложения для этого действия. Например, большинство платформ поддерживают действие Desktop.Action.OPEN. Но для конкретного файла может не быть зарегистрированного приложения для его открытия. В этом случае isSupported(Action) может вернуть true, но соответствующий метод действия выбросит IOException.

Параметры:
action - заданное Desktop.Action
Возвращает:
true, если указанное действие поддерживается на текущей платформе; false в противном случае
См. также:
  • Desktop.Action

open

public void open(File file) throws IOException
Запускает связанное приложение для открытия файла.

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

Параметры:
file - файл, который нужно открыть с помощью связанного приложения
Исключение:
NullPointerException - если file является null
IllegalArgumentException - если указанный файл не существует
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.OPEN
IOException - если у указанного файла нет связанного приложения или связанное приложение не удалось запустить

edit

public void edit(File file) throws IOException
Запускает связанное приложение-редактор и открывает файл для редактирования.
Параметры:
file - файл, который нужно открыть для редактирования
Исключение:
NullPointerException - если указанный файл является null
IllegalArgumentException - если указанный файл не существует
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.EDIT
IOException - если у указанного файла нет связанного редактора или связанное приложение не удалось запустить

print

public void print(File file) throws IOException
Печатает файл с помощью средства печати рабочего стола, используя команду печати связанного приложения.
Параметры:
file - файл, который нужно распечатать
Исключение:
NullPointerException - если указанный файл является null
IllegalArgumentException - если указанный файл не существует
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.PRINT
IOException - если у указанного файла нет связанного приложения для печати

browse

public void browse(URI uri) throws IOException
Запускает стандартный браузер для отображения URI. Если стандартный браузер не может обработать указанный URI, вызывается приложение, зарегистрированное для обработки URIs указанного типа. Приложение определяется по протоколу и пути URI, как определено классом URI.
Параметры:
uri - URI, который нужно отобразить в стандартном браузере пользователя
Исключение:
NullPointerException - если uri является null
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.BROWSE
IOException - если стандартный браузер пользователя не найден, или не удалось запустить, или не удалось запустить приложение по умолчанию
См. также:
  • URI

mail

public void mail() throws IOException
Запускает окно составления письма стандартного почтового клиента пользователя.
Исключение:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.MAIL
IOException - если стандартный почтовый клиент пользователя не найден или не удалось запустить

mail

public void mail(URI mailtoURI) throws IOException
Запускает окно составления письма стандартного почтового клиента пользователя, заполняя поля сообщения, указанные в mailto: URI.

mailto: URI может указывать поля сообщения, включая "to", "cc", "subject", "body" и т. д. См. The mailto URL scheme (RFC 2368) для подробностей спецификации mailto: URI.

Параметры:
mailtoURI - указанный mailto: URI
Исключение:
NullPointerException - если указанный URI является null
IllegalArgumentException - если схема URI не является "mailto"
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.MAIL
IOException - если стандартный почтовый клиент пользователя не найден или не удалось запустить
Внешние спецификации
  • RFC 2368: The mailto URL scheme
См. также:
  • URI

addAppEventListener

public void addAppEventListener(SystemEventListener listener)
Добавляет подтипы SystemEventListener для прослушивания уведомлений из системного ядра. Не оказывает никакого эффекта, если подтип SystemEventListener не поддерживается на текущей платформе.
Параметры:
listener - слушатель
С тех пор:
9
См. также:
  • AppForegroundListener
  • AppHiddenListener
  • AppReopenedListener
  • ScreenSleepListener
  • SystemSleepListener
  • UserSessionListener

removeAppEventListener

public void removeAppEventListener(SystemEventListener listener)
Удаляет подтипы SystemEventListener для прослушивания уведомлений из системного ядра. Не оказывает никакого эффекта, если подтип SystemEventListener не поддерживается на текущей платформе.
Параметры:
listener - слушатель
С тех пор:
9
См. также:
  • AppForegroundListener
  • AppHiddenListener
  • AppReopenedListener
  • ScreenSleepListener
  • SystemSleepListener
  • UserSessionListener

setAboutHandler

public void setAboutHandler(AboutHandler aboutHandler)
Устанавливает обработчик для отображения пользовательского окна «О программе» для вашего приложения.

Установка AboutHandler в null возвращает к поведению по умолчанию.

Параметры:
aboutHandler - обработчик для ответа на сообщение AboutHandler.handleAbout(AboutEvent)
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_ABOUT
С:
9

setPreferencesHandler

public void setPreferencesHandler(PreferencesHandler preferencesHandler)
Устанавливает обработчик для отображения пользовательского окна «Настройки» для вашего приложения.

Установка PreferencesHandler в null возвращает к поведению по умолчанию

Параметры:
preferencesHandler - обработчик для ответа на PreferencesHandler.handlePreferences(PreferencesEvent)
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_PREFERENCES
С:
9

setOpenFileHandler

public void setOpenFileHandler(OpenFilesHandler openFileHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено открыть список файлов.
Примечание по реализации:
Обратите внимание, что для macOS уведомления отправляются только если приложение Java является приложением в пакете, с массивом CFBundleDocumentTypes в его Info.plist. См. документацию Apple Developer для получения дополнительной информации о Info.plist.
Параметры:
openFileHandler - обработчик
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_OPEN_FILE
С:
9

setPrintFileHandler

public void setPrintFileHandler(PrintFilesHandler printFileHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено распечатать список файлов.
Примечание по реализации:
Обратите внимание, что для macOS уведомления отправляются только если приложение Java является приложением в пакете, с массивом CFBundleDocumentTypes в его Info.plist. См. документацию Apple Developer для получения дополнительной информации о Info.plist.
Параметры:
printFileHandler - обработчик
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_PRINT_FILE
С:
9

setOpenURIHandler

public void setOpenURIHandler(OpenURIHandler openURIHandler)
Устанавливает обработчик, который уведомляется, когда приложение запрошено открыть URL. Установка обработчика в null приводит к тому, что все запросы OpenURIHandler.openURI(OpenURIEvent) помещаются в очередь, пока не будет установлен другой обработчик.
Примечание по реализации:
Обратите внимание, что для macOS уведомления отправляются только если приложение Java является приложением в пакете, с массивом CFBundleDocumentTypes в его Info.plist. См. документацию Apple Developer для получения дополнительной информации о Info.plist.
Параметры:
openURIHandler - обработчик
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_OPEN_URI
С:
9

setQuitHandler

public void setQuitHandler(QuitHandler quitHandler)
Устанавливает обработчик, который определяет, должен ли приложение завершить работу. Обработчик получает одноразовое QuitResponse, которое может отменить или продолжить завершение работы. Установка обработчика в null приводит к тому, что все запросы на завершение работы выполняют по умолчанию QuitStrategy.
Параметры:
quitHandler - обработчик, вызываемый при запросе завершения работы приложения
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_QUIT_HANDLER
С:
9

setQuitStrategy

public void setQuitStrategy(QuitStrategy strategy)
Устанавливает стратегию по умолчанию для завершения работы этого приложения. По умолчанию используется SYSTEM_EXIT_0.
Параметры:
strategy - способ завершения работы этого приложения
С:
9
См. также:
  • QuitStrategy

enableSuddenTermination

public void enableSuddenTermination()
Включает внезапное завершение работы приложения. Вызовите этот метод, чтобы указать, что состояние вашего приложения сохранено и не требует уведомления о завершении работы. Возможность внезапного завершения улучшает пользовательский опыт, избегая повторного отображения приложения при запросе его завершения. Примечание: включение внезапного завершения позволит завершить работу приложения без уведомления QuitHandler или выполнения обработчиков завершения. Например, запросы пользователя Cmd-Q, выход из системы, перезагрузка или выключение компьютера эффективно «убьют» ваше приложение.
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_SUDDEN_TERMINATION
С:
9
См. также:
  • disableSuddenTermination()

disableSuddenTermination

public void disableSuddenTermination()
Предотвращает внезапное завершение работы этого приложения. Вызовите этот метод, чтобы указать, что в приложении есть несохранённые данные, и оно не может быть завершено без уведомления.
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_SUDDEN_TERMINATION
С:
9
См. также:
  • enableSuddenTermination()

requestForeground

public void requestForeground(boolean allWindows)
Запрашивает, чтобы это приложение переместилось в фокус.
Параметры:
allWindows - если все окна этого приложения должны быть перемещены в фокус, или только самое переднее
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_REQUEST_FOREGROUND
С:
9

openHelpViewer

public void openHelpViewer()
Открывает приложение просмотра справки по умолчанию.
Примечание по реализации:
Обратите внимание, что для Mac OS, оно открывает приложение просмотра справки по умолчанию, если справочник помошник был добавлен в пакет приложения и зарегистрирован в Info.plist с CFBundleHelpBookFolder
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_HELP_VIEWER
С:
9

setDefaultMenuBar

public void setDefaultMenuBar(JMenuBar menuBar)
Устанавливает строку меню по умолчанию для использования, когда нет активных фреймов.
Параметры:
menuBar - для использования, когда нет других активных фреймов
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.APP_MENU_BAR
С:
9

browseFileDirectory

public void browseFileDirectory(File file)
Открывает папку, содержащую file, и выбирает её в файловом менеджере по умолчанию.
Параметры:
file - файл
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.BROWSE_FILE_DIR
NullPointerException - если file является null
IllegalArgumentException - если указанный файл или его родительский каталог не существуют
С:
9

moveToTrash

public boolean moveToTrash(File file)
Перемещает указанный файл в корзину.
Параметры:
file - файл
Возвращаемое значение:
возвращает true, если файл успешно перемещён в корзину.
Исключения:
UnsupportedOperationException - если текущая платформа не поддерживает действие Desktop.Action.MOVE_TO_TRASH
NullPointerException - если file является null
IllegalArgumentException - если указанный файл не существует
С:
9

© 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/Desktop.html

Spec-Zone.ru

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