Класс Toolkit
public abstract class Toolkit extends Object
Toolkit используются для привязки различных компонентов к конкретным реализациям нативного инструментария. Многие события графического интерфейса могут быть доставлены пользователю асинхронно, если это не указано явно. Так же многие операции с графическим интерфейсом могут выполняться асинхронно. Это означает, что если состояние компонента устанавливается, а затем состояние немедленно запрашивается, возвращаемое значение может ещё не отражать запрошенное изменение. Это поведение включает, но не ограничивается:
- Прокрутка до указанной позиции.
Например, вызовScrollPane.setScrollPositionи затемgetScrollPositionможет вернуть неверное значение, если исходный запрос ещё не обработан. - Перемещение фокуса с одного компонента на другой.
Для получения более подробной информации, см. Время передачи фокуса, раздел в Руководстве по Swing. - Отображение контейнера верхнего уровня.
ВызовsetVisible(true)наWindow,FrameилиDialogможет происходить асинхронно. - Установка размера или расположения контейнера верхнего уровня.
ВызовыsetSize,setBoundsилиsetLocationнаWindow,FrameилиDialogпередаются в подлежащую системе управления окнами и могут быть проигнорированы или изменены. См.Windowдля получения дополнительной информации.
Большинство приложений не должны вызывать методы этого класса напрямую. Методы, определенные Toolkit, являются "связующим звеном", которое соединяет независимые от платформы классы в пакете java.awt с их аналогами в java.awt.peer. Некоторые методы, определенные Toolkit, напрямую запрашивают у родной операционной системы.
- С момента:
- 1.0
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected final Map |
desktopProperties |
Свойства рабочего стола. |
protected final PropertyChangeSupport |
desktopPropsSupport |
Поддержка изменений свойств рабочего стола. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт Toolkit. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addAWTEventListener |
Добавляет AWTEventListener для получения всех AWTEvents, отправляемых системой, соответствующих заданному eventMask. |
void |
addPropertyChangeListener |
Добавляет указанного слушателя изменения свойств для указанного свойства рабочего стола. |
boolean |
areExtraMouseButtonsEnabled() |
Сообщает, разрешено ли обработка и отправка событий дополнительных кнопок мыши в EventQueue. |
abstract void |
beep() |
Издает звуковой сигнал "бип", в зависимости от системных настроек и возможностей оборудования. |
abstract int |
checkImage |
Указывает статус подготовки заданного изображения для отображения. |
Cursor |
createCustomCursor |
Создаёт новый объект курсора пользовательского типа. |
<T extends DragGestureRecognizer> |
createDragGestureRecognizer |
Создаёт конкретный, зависимый от платформы, подкласс абстрактного класса DragGestureRecognizer, запрошенного, и связывает его с заданным DragSource, Component и DragGestureListener. |
Image |
createImage |
Создаёт изображение, декодируя изображение, хранящееся в указанном массиве байтов. |
abstract Image |
createImage |
Создаёт изображение, декодируя изображение, хранящееся в указанном массиве байтов, по указанному смещению и длине. |
abstract Image |
createImage |
Создаёт изображение с указанным производителем изображений. |
abstract Image |
createImage |
Возвращает изображение, получающее данные пикселей из указанного файла. |
abstract Image |
createImage |
Возвращает изображение, получающее данные пикселей из указанного URL. |
AWTEventListener[] |
getAWTEventListeners() |
Возвращает массив всех AWTEventListener, зарегистрированных в этой инструментальной среде. |
AWTEventListener[] |
getAWTEventListeners |
Возвращает массив всех AWTEventListener, зарегистрированных в этой инструментальной среде, которые слушают все типы событий, указанные в аргументе eventMask. |
Dimension |
getBestCursorSize |
Возвращает размер курсора, который наиболее близок к желаемым размерам. |
abstract ColorModel |
getColorModel() |
Определяет цветовой профиль экрана этой инструментальной среды. |
static Toolkit |
getDefaultToolkit() |
Получает стандартную инструментальную среду. |
final Object |
getDesktopProperty |
Получает значение указанного свойства рабочего стола. |
abstract String[] |
getFontList() |
Устаревший. |
abstract FontMetrics |
getFontMetrics |
Устаревший. Начиная с версии JDK 1.2, заменён методом Font getLineMetrics. |
abstract Image |
getImage |
Возвращает изображение, получающее данные пикселей из указанного файла, формат которого может быть GIF, JPEG или PNG. |
abstract Image |
getImage |
Возвращает изображение, получающее данные пикселей из указанного URL. |
boolean |
getLockingKeyState |
Возвращает, находится ли данная клавиша блокировки на клавиатуре в состоянии "включено". |
int |
getMaximumCursorColors() |
Возвращает максимальное количество цветов, поддерживаемых инструментальной средой в палитре пользовательского курсора. |
int |
getMenuShortcutKeyMask() |
Устаревший. Рекомендуется использовать расширенные клавиши модификаторов и getMenuShortcutKeyMaskEx() |
int |
getMenuShortcutKeyMaskEx() |
Определяет, какая расширенная клавиша модификатора является подходящей клавишей-акселератором для ярлыков меню. |
protected static Container |
getNativeContainer |
Предоставляет родным компонентам возможность запросить родной контейнер, заданный родным компонентом (например, непосредственный родитель может быть лёгким). |
PrintJob |
getPrintJob |
Получает объект PrintJob, являющийся результатом инициирования операции печати на платформе инструментальной среды. |
abstract PrintJob |
getPrintJob |
Получает объект PrintJob, являющийся результатом инициирования операции печати на платформе инструментальной среды. |
static String |
getProperty |
Получает свойство с указанным ключом и значением по умолчанию. |
PropertyChangeListener[] |
getPropertyChangeListeners() |
Возвращает массив всех слушателей изменения свойств, зарегистрированных в этой инструментальной среде. |
PropertyChangeListener[] |
getPropertyChangeListeners |
Возвращает массив всех слушателей изменения свойств, связанных с указанным именем свойства рабочего стола. |
Insets |
getScreenInsets |
Получает отступы экрана. |
abstract int |
getScreenResolution() |
Возвращает разрешение экрана в точках на дюйм. |
abstract Dimension |
getScreenSize() |
Получает размер экрана. |
abstract Clipboard |
getSystemClipboard() |
Получает единичный экземпляр системного буфера обмена, который взаимодействует с возможностями буфера обмена, предоставляемыми родной платформой. |
final EventQueue |
getSystemEventQueue() |
Получает экземпляр EventQueue приложения или апплета. |
protected abstract EventQueue |
getSystemEventQueueImpl() |
Получает экземпляр EventQueue приложения или апплета без проверки доступа. |
Clipboard |
getSystemSelection() |
Получает единичный экземпляр системного выделения в виде объекта Clipboard. |
protected void |
initializeDesktopProperties() |
initializeDesktopProperties |
boolean |
isAlwaysOnTopSupported() |
Возвращает, поддерживается ли режим всегда сверху этим инструментом. |
boolean |
isDynamicLayoutActive() |
Возвращает, включена ли динамическая компоновка контейнеров при изменении размера на базовой операционной системе и/или диспетчере окон. |
protected boolean |
isDynamicLayoutSet() |
Возвращает, выполняется ли динамическая или статическая проверка компоновки контейнеров во время изменения размера. |
boolean |
isFrameStateSupported |
Возвращает, поддерживает ли Toolkit это состояние для Frame. |
abstract boolean |
isModalExclusionTypeSupported |
Возвращает, поддерживается ли данный тип исключения из режима модального диалога этой инструментальной средой. |
abstract boolean |
isModalityTypeSupported |
Возвращает, поддерживается ли данный тип модальности этой инструментальной средой. |
protected Object |
lazilyLoadDesktopProperty |
Возможность ленивой оценки значений свойств рабочего стола. |
protected void |
loadSystemColors |
Заполняет массив целых чисел, переданный в качестве аргумента, текущими системными цветовыми значениями. |
abstract Map |
mapInputMethodHighlight |
Возвращает карту визуальных атрибутов для абстрактного описания выделения данного средства ввода, или null, если соответствия не найдено. |
abstract boolean |
prepareImage |
Подготавливает изображение для отрисовки. |
void |
removeAWTEventListener |
Удаляет AWTEventListener из получения отправленных AWTEvents. |
void |
removePropertyChangeListener |
Удаляет указанного слушателя изменения свойств для указанного свойства рабочего стола. |
protected final void |
setDesktopProperty |
Устанавливает указанное свойство рабочего стола в указанное значение и генерирует событие изменения свойства для уведомления любых слушателей об изменении значения. |
void |
setDynamicLayout |
Управляет тем, выполняется ли проверка компоновки контейнеров динамически во время изменения размера или статически после завершения изменения размера. |
void |
setLockingKeyState |
Устанавливает состояние данной клавиши блокировки на клавиатуре. |
abstract void |
sync() |
Синхронизирует состояние графики этого инструментария. |
Подробное описание полей
desktopProperties
protected final Map<String,Object> desktopProperties
desktopPropsSupport
protected final PropertyChangeSupport desktopPropsSupport
Подробное описание конструкторов
Toolkit
protected Toolkit()
Toolkit.Подробное описание методов
loadSystemColors
protected void loadSystemColors(int[] systemColors) throws HeadlessException
- Параметры:
-
systemColors- целочисленный массив. - Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.1
- См. также:
setDynamicLayout
public void setDynamicLayout(boolean dynamic) throws HeadlessException
isDynamicLayoutActive(), чтобы определить, включена ли эта функция в данной программе и поддерживается ли она данной операционной системой и/или менеджером окон. Обратите внимание, что эта функция поддерживается не на всех платформах, и, наоборот, что на некоторых платформах её нельзя отключить. На платформах, где динамическое расположение во время изменения размера не поддерживается (или всегда поддерживается), установка этого свойства не оказывает никакого влияния. Обратите внимание, что на некоторых платформах это свойство можно установить или сбросить в качестве свойства операционной системы или менеджера окон. На таких платформах свойство динамического изменения размера необходимо установить на уровне операционной системы или менеджера окон, прежде чем этот метод начнёт действовать. Этот метод не изменяет поддержку или настройки базовой операционной системы или менеджера окон. Поддержка OS/WM может быть запрошена с помощью метода getDesktopProperty("awt.dynamicLayoutSupported").- Параметры:
-
dynamic- Если true, контейнеры должны повторно расположить свои компоненты по мере изменения размера контейнера. Если false, макет будет проверен после завершения изменения размера. - Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.4
- См. также:
isDynamicLayoutSet
protected boolean isDynamicLayoutSet() throws HeadlessException
- Возвращает:
- true, если валидация контейнеров выполняется динамически, false, если валидация выполняется после завершения изменения размера.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.4
- См. также:
isDynamicLayoutActive
public boolean isDynamicLayoutActive() throws HeadlessException
setDynamicLayout(boolean) можно использовать для программного включения или выключения динамического макета платформы. Независимо от того, поддерживается ли такое переключение, или указано ли true или
false в качестве аргумента, или вообще никогда не вызывался, этот метод вернёт текущее активное поведение платформы, за которым JDK будет следить при определении политики макета во время изменения размера. Если динамическое расположение в настоящее время неактивно, контейнеры повторно расположат свои компоненты после завершения изменения размера. В результате метод Component.validate() будет вызываться только один раз на изменение размера. Если динамическое расположение в настоящее время активно, контейнеры повторно расположат свои компоненты при каждом событии изменения размера ввода-вывода, и метод validate() будет вызываться каждый раз. Поддержка OS/WM может быть запрошена с помощью метода getDesktopProperty("awt.dynamicLayoutSupported"). Это свойство отразит возможности платформы, но недостаточно, чтобы сказать, включено ли оно в настоящее время.
- Возвращает:
- true, если динамическое расположение контейнеров при изменении размера в настоящее время активно, иначе false.
- Исключения:
-
HeadlessException- если метод GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.4
- См. также:
getScreenSize
public abstract Dimension getScreenSize() throws HeadlessException
GraphicsConfiguration и GraphicsDevice.- Возвращает:
- размер экрана этого инструментария в пикселях.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getScreenResolution
public abstract int getScreenResolution() throws HeadlessException
- Возвращает:
- разрешение экрана этого инструментария в точках на дюйм.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getScreenInsets
public Insets getScreenInsets(GraphicsConfiguration gc) throws HeadlessException
- Параметры:
-
gc-GraphicsConfiguration - Возвращает:
- отступы экрана этого инструментария в пикселях.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.4
- См. также:
getColorModel
public abstract ColorModel getColorModel() throws HeadlessException
ColorModel - абстрактный класс, который инкапсулирует возможность перевода между значениями пикселей изображения и его компонентами красного, зелёного, синего и альфа-каналов.
Этот метод инструментария вызывается методом getColorModel класса Component.
- Возвращает:
- цветовой профиль экрана этого инструментария.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getFontList
@Deprecated public abstract String[] getFontList()
Для версии 1.1 следующие имена шрифтов устарели (замена приведена ниже):
- TimesRoman (используйте Serif)
- Helvetica (используйте SansSerif)
- Courier (используйте Monospaced)
Имя шрифта ZapfDingbats также устарело в 1.1, но символы определены в Unicode, начиная с 0x2700, и Java с версии 1.1 поддерживает эти символы.
- Возвращает:
- имена доступных шрифтов в данном инструментарии.
- См. также:
getFontMetrics
@Deprecated public abstract FontMetrics getFontMetrics(Font font)
Font getLineMetrics.- Параметры:
-
font- шрифт - Возвращает:
- метрики отображения указанного шрифта в данном инструменте
- См. также:
sync
public abstract void sync()
Этот метод гарантирует, что отображение обновлено. Он полезен для анимации.
getDefaultToolkit
public static Toolkit getDefaultToolkit()
Если системная переменная, названная "java.awt.headless", установлена в значение true, используется бестолковая реализация Toolkit, иначе используется стандартная платформа-специфическая реализация Toolkit.
Если этот Toolkit не является бестолковой реализацией и если они существуют, поставщики услуг AccessibilityProvider будут загружены, если это указано в системной переменной javax.accessibility.assistive_technologies.
Пример установки этой переменной — вызов Java с -Djavax.accessibility.assistive_technologies=MyServiceProvider. В дополнение к MyServiceProvider могут быть указаны другие поставщики услуг, используя список, разделенный запятыми. Поставщики услуг загружаются после создания AWT инструмента.
Если список поставщиков вспомогательных технологий, предоставленный через системную переменную "javax.accessibility.assistive_technologies", пустой или содержит только пробельные символы, он игнорируется. Все остальные ошибки обрабатываются через исключение AWTError.
Имена, указанные в свойстве assistive_technologies, используются для запроса каждой реализации поставщика услуг. Если запрашиваемое имя соответствует имени имени поставщика услуг, метод AccessibilityProvider.activate() будет вызван для активации соответствующего поставщика услуг.
- Требования к реализации:
- Если поставщики услуг вспомогательных технологий не указаны с помощью системной переменной, эта реализация будет искать файл свойств по следующим путям:
-
${user.home}/.accessibility.properties -
${java.home}/conf/accessibility.properties
assistive_technologies=. Может быть указан один поставщик или список поставщиков, разделенный запятыми. -
- Возвращает:
- стандартный инструмент.
- Исключения:
-
AWTError- в случае ошибки при загрузке вспомогательных технологий. - См. также:
getImage
public abstract Image getImage(String filename)
Поскольку механизм, необходимый для обеспечения этого совместного использования объектов Image, может продолжать удерживать изображения, которые больше не используются в течение неопределенного периода времени, разработчикам рекомендуется реализовать свой кэширование изображений, используя вариант createImage, где это доступно. Если данные изображения, содержащиеся в указанном файле, изменяются, объект Image, возвращенный этим методом, может по-прежнему содержать устаревшую информацию, которая была загружена из файла после предыдущего вызова. Загруженные ранее данные изображения можно вручную удалить, вызвав метод flush на возвращенном объекте Image.
- Параметры:
-
filename- имя файла, содержащего данные пикселей в распознанном формате файла. - Возвращает:
- изображение, получающее данные пикселей из указанного файла.
- См. также:
getImage
public abstract Image getImage(URL url)
Поскольку механизм, необходимый для обеспечения этого совместного использования объектов Image, может продолжать удерживать изображения, которые больше не используются в течение неопределенного периода времени, разработчикам рекомендуется реализовать свой кэширование изображений, используя вариант createImage, где это доступно. Если данные изображения, хранящиеся по указанному URL-адресу, изменяются, объект Image, возвращенный этим методом, может по-прежнему содержать устаревшую информацию, которая была получена с URL-адреса после предыдущего вызова. Загруженные ранее данные изображения можно вручную удалить, вызвав метод flush на возвращенном объекте Image.
- Параметры:
-
url- URL для получения данных пикселей. - Возвращает:
- изображение, получающее данные пикселей из указанного URL.
- См. также:
createImage
public abstract Image createImage(String filename)
- Параметры:
-
filename- имя файла, содержащего данные пикселей в распознанном формате файла. - Возвращает:
- изображение, получающее данные пикселей из указанного файла.
- См. также:
createImage
public abstract Image createImage(URL url)
- Параметры:
-
url- URL для получения данных пикселей. - Возвращает:
- изображение, получающее данные пикселей из указанного URL.
- См. также:
prepareImage
public abstract boolean prepareImage(Image image, int width, int height, ImageObserver observer)
Если значения аргументов width и height оба равны -1, этот метод подготавливает изображение к рендерингу на стандартном экране; в противном случае этот метод подготавливает изображение к рендерингу на стандартном экране при указанной ширине и высоте.
Данные изображения загружаются асинхронно в другом потоке, и создаётся соответствующее масштабированное представление изображения на экране.
Этот метод вызывается компонентами prepareImage методами.
Информация о флагах, возвращаемых этим методом, может быть найдена в определении интерфейса ImageObserver.
- Параметры:
-
image- изображение, для которого необходимо подготовить представление на экране. -
width- ширина желаемого представления на экране, или-1. -
height- высота желаемого представления на экране, или-1. -
observer- объектImageObserver, который будет уведомлён о процессе подготовки изображения. - Возвращает:
-
true, если изображение уже полностью подготовлено;falseв противном случае. - См. также:
checkImage
public abstract int checkImage(Image image, int width, int height, ImageObserver observer)
Если значения аргументов width и height оба равны -1, этот метод возвращает состояние построения экранного представления указанного изображения в данной среде. В противном случае этот метод возвращает состояние построения масштабированного представления изображения при указанной ширине и высоте.
Этот метод не вызывает загрузку изображения. Приложение должно вызвать prepareImage, чтобы принудительно загрузить изображение.
Этот метод вызывается методами компонента checkImage.
Информация о флагах, возвращаемых этим методом, может быть найдена в определении интерфейса ImageObserver.
- Parameters:
-
image- изображение, состояние которого проверяется. -
width- ширина масштабированного варианта, состояние которого проверяется, или-1. -
height- высота масштабированного варианта, состояние которого проверяется, или-1. -
observer- объектImageObserver, который будет уведомлён, когда изображение готовится. - Returns:
- битовая сумма
ImageObserver-флагов для данных изображения, которые в данный момент доступны. - See Also:
createImage
public abstract Image createImage(ImageProducer producer)
- Parameters:
-
producer- производитель изображений, который будет использован. - Returns:
- изображение с указанным производителем изображений.
- See Also:
createImage
public Image createImage(byte[] imagedata)
Данные должны быть в формате изображения, таком как GIF или JPEG, поддерживаемом данной средой.
- Parameters:
-
imagedata- массив байтов, представляющий данные изображения в поддерживаемом формате изображения. - Returns:
- изображение.
- Since:
- 1.1
createImage
public abstract Image createImage(byte[] imagedata, int imageoffset, int imagelength)
- Parameters:
-
imagedata- массив байтов, представляющий данные изображения в поддерживаемом формате изображения. -
imageoffset- смещение начала данных в массиве. -
imagelength- длина данных в массиве. - Returns:
- изображение.
- Since:
- 1.1
getPrintJob
public abstract PrintJob getPrintJob(Frame frame, String jobtitle, Properties props)
PrintJob, который является результатом инициирования операции печати в платформе среды.- Parameters:
-
frame- родитель диалога печати. Не может быть null. -
jobtitle- заголовок PrintJob. null эквивалентен "". -
props- объект Properties, содержащий ноль или более свойств. Свойства не стандартизированы и не согласованы между реализациями. Из-за этого PrintJobs, требующие управления задачей и страницами, должны использовать версию этой функции, которая принимает объекты JobAttributes и PageAttributes. Этот объект может быть обновлён, чтобы отразить выбор пользователя при выходе. Может быть null. - Returns:
- объект
PrintJobилиnull, если пользователь отменил задачу печати. - Throws:
-
NullPointerException- если frame равен null - Since:
- 1.1
- See Also:
getPrintJob
public PrintJob getPrintJob(Frame frame, String jobtitle, JobAttributes jobAttributes, PageAttributes pageAttributes)
PrintJob, который является результатом инициирования операции печати в платформе среды.- Parameters:
-
frame- родитель диалога печати. Не может быть null. -
jobtitle- заголовок PrintJob. null эквивалентен "". -
jobAttributes- набор атрибутов задания, которые будут контролировать PrintJob. Атрибуты будут обновлены, чтобы отразить выбор пользователя, как описано в документации JobAttributes. Может быть null. -
pageAttributes- набор атрибутов страницы, которые будут контролировать PrintJob. Атрибуты будут применены к каждой странице в задаче. Атрибуты будут обновлены, чтобы отразить выбор пользователя, как описано в документации PageAttributes. Может быть null. - Returns:
- объект
PrintJobилиnull, если пользователь отменил задачу печати. - Throws:
-
NullPointerException- если frame равен null -
IllegalArgumentException- если pageAttributes задаёт разные значения разрешений перехода и подачи. Также, если этот поток имеет доступ к файловой системе и jobAttributes задаёт печать в файл, и указанный файл назначения существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан или не может быть открыт по какой-либо другой причине. Однако в случае печати в файл, если также требуется отобразить диалог, пользователю будет предоставлена возможность выбрать файл и продолжить печать. Диалог гарантирует, что выбранный выходной файл является допустимым перед возвращением из этого метода. - Since:
- 1.3
- See Also:
beep
public abstract void beep()
- Since:
- 1.1
getSystemClipboard
public abstract Clipboard getSystemClipboard() throws HeadlessException
В дополнение к любым и всем стандартным форматам, текст, возвращаемый методом getTransferData() системного буфера обмена, доступен в следующих форматах:
- DataFlavor.stringFlavor
- DataFlavor.plainTextFlavor (устаревший)
java.awt.datatransfer.StringSelection, если запрашиваемый формат является DataFlavor.plainTextFlavor, или эквивалентный формат, возвращается Reader. Примечание: Поведение метода getTransferData() системного буфера обмена для DataFlavor.plainTextFlavor и эквивалентных DataFlavors не соответствует определению DataFlavor.plainTextFlavor. Из-за этого поддержка DataFlavor.plainTextFlavor и эквивалентных форматов устарела.- Returns:
- системный буфер обмена
- Throws:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - Since:
- 1.1
- See Also:
getSystemSelection
public Clipboard getSystemSelection() throws HeadlessException
Clipboard. Это позволяет приложению читать и изменять текущее системное выделение. Приложение отвечает за обновление системного выделения всякий раз, когда пользователь выделяет текст, используя мышь или клавиатуру. Обычно это реализуется путём установки обработчика FocusListener на все Component, поддерживающие выделение текста, и между событиями FOCUS_GAINED и FOCUS_LOST, переданными этому Component, обновление системного выделения Clipboard при изменении выделения внутри Component. Правильное обновление системного выделения гарантирует, что Java-приложение будет корректно взаимодействовать с нативными приложениями и другими Java-приложениями, работающими одновременно на системе. Обратите внимание, что классы java.awt.TextComponent и javax.swing.text.JTextComponent уже следуют этой политике. При использовании этих классов и их подклассов разработчики не должны писать дополнительный код.
Некоторые платформы не поддерживают системное выделение Clipboard. На таких платформах этот метод вернёт null. В таком случае приложение освобождается от ответственности по обновлению системного выделения Clipboard, как описано выше.
- Возвращает:
- системное выделение в виде объекта
Clipboardилиnull, если нативная платформа не поддерживает системное выделениеClipboard - Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getMenuShortcutKeyMask
@Deprecated(since="10") public int getMenuShortcutKeyMask() throws HeadlessException
getMenuShortcutKeyMaskEx() вместо этого Ярлыки меню, которые воплощены в классе MenuShortcut, обрабатываются классом MenuBar.
По умолчанию этот метод возвращает Event.CTRL_MASK. Реализации Toolkit должны переопределять этот метод, если клавиша Control не является правильной клавишей для акселераторов.
- Возвращает:
- маску модификаторов в классе
Event, используемую для ярлыков меню в этом наборе инструментов. - Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getMenuShortcutKeyMaskEx
public int getMenuShortcutKeyMaskEx() throws HeadlessException
Ярлыки меню, которые воплощены в классе MenuShortcut, обрабатываются классом MenuBar.
По умолчанию этот метод возвращает InputEvent.CTRL_DOWN_MASK. Реализации Toolkit должны переопределять этот метод, если клавиша Control не является правильной клавишей для акселераторов.
- Возвращает:
- маску модификаторов в классе
InputEvent, используемую для ярлыков меню в этом наборе инструментов - Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getLockingKeyState
public boolean getLockingKeyState(int keyCode) throws UnsupportedOperationException
VK_CAPS_LOCK, VK_NUM_LOCK, VK_SCROLL_LOCK и VK_KANA_LOCK.- Параметры:
-
keyCode- код клавиши - Возвращает:
-
true, если данная клавиша включена; иначеfalse - Исключения:
-
IllegalArgumentException- еслиkeyCodeне является одним из допустимых кодов клавиш -
UnsupportedOperationException- если хост-система не позволяет программно получить состояние этой клавиши или если на клавиатуре нет этой клавиши -
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
setLockingKeyState
public void setLockingKeyState(int keyCode, boolean on) throws UnsupportedOperationException
VK_CAPS_LOCK, VK_NUM_LOCK, VK_SCROLL_LOCK и VK_KANA_LOCK. В зависимости от платформы, установка состояния клавиши блокировки может включать обработку событий и, следовательно, может не быть немедленно наблюдаема через getLockingKeyState.
- Параметры:
-
keyCode- код клавиши -
on- состояние клавиши - Исключения:
-
IllegalArgumentException- еслиkeyCodeне является одним из допустимых кодов клавиш -
UnsupportedOperationException- если хост-система не позволяет программно установить состояние этой клавиши, или если на клавиатуре нет этой клавиши -
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getNativeContainer
protected static Container getNativeContainer(Component c)
- Параметры:
-
c- компонент, для которого нужно получить контейнер - Возвращает:
- объект нативного контейнера для компонента
createCustomCursor
public Cursor createCustomCursor(Image cursor, Point hotSpot, String name) throws IndexOutOfBoundsException, HeadlessException
Обратите внимание, что изображения с несколькими кадрами недействительны и могут привести к зависанию этого метода.
- Параметры:
-
cursor- изображение для отображения при активации курсора -
hotSpot- координаты X и Y точки пересечения большого курсора; значения hotSpot должны быть меньше размера, возвращаемого методомgetBestCursorSize -
name- локализованное описание курсора для использования Java Accessibility - Возвращает:
- созданный курсор
- Исключения:
-
IndexOutOfBoundsException- если значения hotSpot находятся за пределами границ курсора -
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getBestCursorSize
public Dimension getBestCursorSize(int preferredWidth, int preferredHeight) throws HeadlessException
Примечание: если используется изображение, размер которого не соответствует поддерживаемому размеру (как возвращается этим методом), реализация Toolkit попытается изменить размер изображения на поддерживаемый размер. Поскольку конвертирование изображений с низким разрешением затруднено, нет гарантий относительно качества изображения курсора, которое не является поддерживаемым размером. Поэтому рекомендуется вызывать этот метод и использовать подходящее изображение, чтобы не производить преобразование изображений.
- Параметры:
-
preferredWidth- предпочтительная ширина курсора, которую компонент хочет использовать. -
preferredHeight- предпочтительная высота курсора, которую компонент хочет использовать. - Возвращает:
- наиболее подходящий поддерживаемый размер курсора или размер 0, 0, если реализация Toolkit не поддерживает пользовательские курсоры.
- Исключения:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getMaximumCursorColors
public int getMaximumCursorColors() throws HeadlessException
Примечание: если используется изображение с количеством цветов в палитре больше поддерживаемого максимума, реализация Toolkit попытается сжать палитру до максимума. Поскольку преобразование изображений низкого разрешения затруднено, нет гарантий относительно качества изображения курсора, имеющего больше цветов, чем поддерживает система. Поэтому рекомендуется вызывать этот метод и использовать подходящее изображение, чтобы не производить преобразование изображения.
- Возвращает:
- максимальное количество цветов или ноль, если пользовательские курсоры не поддерживаются этой реализацией Toolkit.
- Изначает:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С тех пор:
- 1.2
- См. также:
isFrameStateSupported
public boolean isFrameStateSupported(int state) throws HeadlessException
Frame. Этот метод показывает, поддерживается ли концепция UI, например, максимизации или минимизации. Он всегда возвращает false для «сложных» состояний, таких как Frame.ICONIFIED|Frame.MAXIMIZED_VERT. Другими словами, общее правило состоит в том, что осмыслены только запросы с единственным константой состояния фрейма в качестве аргумента.Обратите внимание, что поддержка данной концепции зависит от платформы. Из-за ограничений нативной среды объект Toolkit может указать, что определённое состояние поддерживается, но в то же время объект Toolkit не сможет применить это состояние к данному фрейму. У этого обстоятельства есть два следствия:
- Только возвращаемое значение
falseдля данного метода фактически указывает, что данное состояние не поддерживается. Если метод возвращаетtrue, данное состояние может по-прежнему быть неподдерживаемым и/или недоступным для определённого фрейма. - Разработчик должен рассмотреть возможность проверки значения метода
WindowEvent.getNewState()объектаWindowEvent, полученного черезWindowStateListener, а не полагаться на то, что состояние, переданное методуsetExtendedState(), будет обязательно применено. Более подробную информацию см. в документации для методаFrame.setExtendedState(int).
- Параметры:
-
state- одна из именованных констант состояния фрейма. - Возвращает:
-
trueподдерживается ли это состояние фрейма данной реализацией Toolkit,falseв противном случае. - Изначает:
-
HeadlessException- еслиGraphicsEnvironment.isHeadless()возвращаетtrue. - С тех пор:
- 1.4
- См. также:
getProperty
public static String getProperty(String key, String defaultValue)
- Параметры:
-
key- ключ -
defaultValue- значение по умолчанию - Возвращает:
- значение свойства или значение по умолчанию, если свойство не найдено
getSystemEventQueue
public final EventQueue getSystemEventQueue()
- Возвращает:
- объект
EventQueue
getSystemEventQueueImpl
protected abstract EventQueue getSystemEventQueueImpl()
EventQueue приложения или апплета, не проверяя доступ. По соображениям безопасности, это можно вызывать только из подкласса Toolkit.- Возвращает:
- объект
EventQueue
createDragGestureRecognizer
public <T extends DragGestureRecognizer> T createDragGestureRecognizer(Class<T> abstractRecognizerClass, DragSource ds, Component c, int srcActions, DragGestureListener dgl)
- Параметры типа:
T- тип DragGestureRecognizer для создания- Параметры:
-
abstractRecognizerClass- абстрактный класс требуемого распознавателя -
ds- DragSource -
c- целевой Component для DragGestureRecognizer -
srcActions- разрешённые действия для жеста -
dgl- DragGestureListener - Возвращает:
- новый объект или null. Всегда возвращает null, если GraphicsEnvironment.isHeadless() возвращает true.
- См. также:
getDesktopProperty
public final Object getDesktopProperty(String propertyName)
- Параметры:
-
propertyName- имя свойства - Возвращает:
- значение для указанного свойства рабочего стола
setDesktopProperty
protected final void setDesktopProperty(String name, Object newValue)
- Параметры:
-
name- имя свойства -
newValue- новое значение свойства
lazilyLoadDesktopProperty
protected Object lazilyLoadDesktopProperty(String name)
- Параметры:
-
name- имя - Возвращает:
- свойство рабочего стола или null
initializeDesktopProperties
protected void initializeDesktopProperties()
addPropertyChangeListener
public void addPropertyChangeListener(String name, PropertyChangeListener pcl)
PropertyChangeListenerProxy, его имя свойства игнорируется, и слушатель обертывается. Если name равно null или pcl равно null, исключение не генерируется, и действие не выполняется.- Параметры:
-
name- Имя свойства, для которого нужно прослушивать изменения -
pcl- Слушатель изменений свойства - С тех пор:
- 1.2
- См. также:
removePropertyChangeListener
public void removePropertyChangeListener(String name, PropertyChangeListener pcl)
PropertyChangeListenerProxy, его имя свойства игнорируется, и слушатель удаляется. Если name равно null или pcl равно null, исключение не генерируется, и действие не выполняется.- Параметры:
-
name- Имя свойства, которое нужно удалить -
pcl- Слушатель изменений свойства - С тех пор:
- 1.2
- См. также:
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()
PropertyChangeListenerProxy, которые связывают слушателей с именами свойств рабочего стола.- Возвращает:
- все объекты
PropertyChangeListenerэтого toolkit, обернутые в объектыjava.beans.PropertyChangeListenerProxy, или пустой массив, если слушатели не добавлены - С тех пор:
- 1.4
- См. также:
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners(String propertyName)
- Параметры:
-
propertyName- имя свойства - Возвращает:
- все
PropertyChangeListenerобъекты, связанные с указанным именем свойства рабочего стола, или пустой массив, если такие слушатели не добавлены - С:
- 1.4
- См. также:
isAlwaysOnTopSupported
public boolean isAlwaysOnTopSupported()
Window.isAlwaysOnTopSupported().- Возвращает:
-
true, если текущий набор инструментов поддерживает режим «всегда сверху», в противном случае возвращаетfalse - С:
- 1.6
- См. также:
isModalityTypeSupported
public abstract boolean isModalityTypeSupported(Dialog.ModalityType modalityType)
Dialog.ModalityType.MODELESS.- Параметры:
-
modalityType- тип модальности, для которого проверяется поддержка этим набором инструментов - Возвращает:
-
true, если текущий набор инструментов поддерживает заданный тип модальности,falseв противном случае - С:
- 1.6
- См. также:
isModalExclusionTypeSupported
public abstract boolean isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType)
Dialog.ModalExclusionType.NO_EXCLUDE.- Параметры:
-
modalExclusionType- тип исключения модальности, для которого проверяется поддержка этим набором инструментов - Возвращает:
-
true, если текущий набор инструментов поддерживает заданный тип исключения модальности,falseв противном случае - С:
- 1.6
- См. также:
addAWTEventListener
public void addAWTEventListener(AWTEventListener listener, long eventMask)
eventMask. eventMask — это битовая маска типов событий для получения. Она строится путем побитового ИЛИ-соединения масок событий, определенных в AWTEvent.
Примечание: использование слушателей событий не рекомендуется для обычного использования приложения, но предназначено только для поддержки специальных функций, включая поддержку доступности, записи/воспроизведения событий и диагностического отслеживания. Если слушатель равен null, исключение не выбрасывается, и никаких действий не выполняется.
- Параметры:
-
listener- слушатель событий. -
eventMask- битовая маска типов событий для получения - С:
- 1.2
- См. также:
removeAWTEventListener
public void removeAWTEventListener(AWTEventListener listener)
Примечание: использование слушателей событий не рекомендуется для обычного использования приложения, но предназначено только для поддержки специальных функций, включая поддержку доступности, записи/воспроизведения событий и диагностического отслеживания. Если слушатель равен null, исключение не выбрасывается, и никаких действий не выполняется.
- Параметры:
-
listener- слушатель событий. - С:
- 1.2
- См. также:
getAWTEventListeners
public AWTEventListener[] getAWTEventListeners()
AWTEventListener. Слушатели могут быть возвращены в AWTEventListenerProxy объектах, которые также содержат маску событий для данного слушателя. Обратите внимание, что объекты слушателей, добавленные несколько раз, появляются только один раз в возвращаемом массиве.- Возвращает:
- все зарегистрированные
AWTEventListenerили пустой массив, если слушатели не зарегистрированы - С:
- 1.4
- См. также:
getAWTEventListeners
public AWTEventListener[] getAWTEventListeners(long eventMask)
AWTEventListener, которые слушают все типы событий, указанные в аргументе eventMask. Слушатели могут быть возвращены в AWTEventListenerProxy объектах, которые также содержат маску событий для данного слушателя. Обратите внимание, что объекты слушателей, добавленные несколько раз, появляются только один раз в возвращаемом массиве.- Параметры:
-
eventMask- битовая маска типов событий для прослушивания - Возвращает:
- все зарегистрированные
AWTEventListenerв этом наборе инструментов для указанных типов событий или пустой массив, если такие слушатели не зарегистрированы - С:
- 1.4
- См. также:
mapInputMethodHighlight
public abstract Map<TextAttribute, ?> mapInputMethodHighlight(InputMethodHighlight highlight) throws HeadlessException
- Параметры:
-
highlight- выделение метода ввода - Возвращает:
- карта атрибутов стиля, или
null - Исключения:
-
HeadlessException- еслиGraphicsEnvironment.isHeadlessвозвращает true - С:
- 1.3
- См. также:
areExtraMouseButtonsEnabled
public boolean areExtraMouseButtonsEnabled() throws HeadlessException
EventQueue. Чтобы изменить возвращаемое значение, необходимо установить свойство
sun.awt.enableExtraMouseButtons перед инициализацией класса Toolkit. Это можно сделать при запуске приложения с помощью следующей команды: java -Dsun.awt.enableExtraMouseButtons=false ApplicationВ качестве альтернативы, свойство можно установить в приложении, используя следующий код:
System.setProperty("sun.awt.enableExtraMouseButtons", "true");
перед инициализацией класса Toolkit. Если оно не установлено к моменту инициализации класса Toolkit, это свойство будет инициализировано значением true. Изменение этого значения после инициализации класса Toolkit не повлияет на результат.- Возвращает:
-
true, если события от дополнительных кнопок мыши разрешены для обработки и публикации;falseв противном случае - Выбрасывает:
-
HeadlessException- если GraphicsEnvironment.isHeadless() возвращает true - С:
- 1.7
- См. также:
© 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/Toolkit.html
GraphicsEnvironment.getAvailableFontFamilyNames()