Класс Toolkit
public abstract class Toolkit extends Object
Toolkit используются для привязки различных компонентов к конкретным реализациям собственного инструментария платформы. Многие события GUI могут доставляться пользователю асинхронно, если явно не указано обратное. Многие операции GUI также могут выполняться асинхронно. Это означает, что если задать состояние компонента, а затем немедленно запросить его, возвращаемое значение может ещё не отражать запрошенное изменение. Такое поведение включает, помимо прочего:
- Прокрутку к указанной позиции.
Например, вызов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 для получения всех отправляемых в системе событий AWTEvent, соответствующих заданному 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, зарегистрированных в этом Toolkit. |
AWTEventListener[] |
getAWTEventListeners |
Возвращает массив всех AWTEventListener, зарегистрированных в этом Toolkit и прослушивающих все типы событий, указанные в аргументе eventMask. |
Dimension |
getBestCursorSize |
Возвращает поддерживаемый размер курсора, наиболее близкий к желаемым размерам. |
abstract ColorModel |
getColorModel() |
Определяет цветовую модель экрана этого Toolkit. |
static Toolkit |
getDefaultToolkit() |
Получает Toolkit по умолчанию. |
final Object |
getDesktopProperty |
Получает значение указанного свойства рабочего стола. |
abstract String[] |
getFontList() |
Устарел. |
abstract FontMetrics |
getFontMetrics |
Устарел. Начиная с версии JDK 1.2 заменён методом getLineMetrics класса Font. |
abstract Image |
getImage |
Возвращает изображение, получающее данные пикселей из указанного файла в формате GIF, JPEG или PNG. |
abstract Image |
getImage |
Возвращает изображение, получающее данные пикселей из указанного URL. |
boolean |
getLockingKeyState |
Возвращает сведения о том, находится ли указанная блокируемая клавиша клавиатуры в состоянии «включено». |
int |
getMaximumCursorColors() |
Возвращает максимальное количество цветов, поддерживаемое Toolkit в палитре пользовательского курсора. |
int |
getMenuShortcutKeyMask() |
Устарел. Рекомендуется использовать расширенные клавиши-модификаторы и getMenuShortcutKeyMaskEx()
|
int |
getMenuShortcutKeyMaskEx() |
Определяет, какая расширенная клавиша-модификатор является соответствующей клавишей ускорения для сочетаний клавиш меню. |
protected static Container |
getNativeContainer |
Предоставляет собственным peer-объектам возможность получить собственный контейнер по собственному компоненту (например, непосредственный родитель может быть облегчённым). |
PrintJob |
getPrintJob |
Получает объект PrintJob, являющийся результатом запуска операции печати на платформе Toolkit. |
abstract PrintJob |
getPrintJob |
Получает объект PrintJob, являющийся результатом запуска операции печати на платформе Toolkit. |
static String |
getProperty |
Получает свойство с указанным ключом и значением по умолчанию. |
PropertyChangeListener[] |
getPropertyChangeListeners() |
Возвращает массив всех слушателей изменений свойств, зарегистрированных в этом Toolkit. |
PropertyChangeListener[] |
getPropertyChangeListeners |
Возвращает массив всех слушателей изменений свойств, связанных с указанным именем свойства рабочего стола. |
Insets |
getScreenInsets |
Получает внутренние отступы экрана. |
abstract int |
getScreenResolution() |
Возвращает разрешение экрана в точках на дюйм. |
abstract Dimension |
getScreenSize() |
Получает размер экрана. |
abstract Clipboard |
getSystemClipboard() |
Получает единственный экземпляр системного Clipboard, взаимодействующий со средствами буфера обмена, предоставляемыми платформой. |
final EventQueue |
getSystemEventQueue() |
Получает экземпляр EventQueue приложения или апплета. |
protected abstract EventQueue |
getSystemEventQueueImpl() |
Получает экземпляр EventQueue приложения или апплета без проверки доступа. |
Clipboard |
getSystemSelection() |
Получает единственный экземпляр системного выделения в виде объекта Clipboard. |
protected void |
initializeDesktopProperties() |
initializeDesktopProperties |
boolean |
isAlwaysOnTopSupported() |
Возвращает сведения о том, поддерживается ли этим Toolkit режим «поверх всех окон». |
boolean |
isDynamicLayoutActive() |
Возвращает сведения о том, включена ли в базовой операционной системе и/или диспетчере окон динамическая компоновка контейнеров при изменении размера. |
protected boolean |
isDynamicLayoutSet() |
Возвращает сведения о том, проверяется ли компоновка контейнеров динамически во время изменения размера или статически после его завершения. |
boolean |
isFrameStateSupported |
Возвращает сведения о том, поддерживает ли Toolkit это состояние для объектов Frame. |
abstract boolean |
isModalExclusionTypeSupported |
Возвращает сведения о том, поддерживается ли этим Toolkit указанный тип исключения из модальности. |
abstract boolean |
isModalityTypeSupported |
Возвращает сведения о том, поддерживается ли этим Toolkit указанный тип модальности. |
protected Object |
lazilyLoadDesktopProperty |
Предоставляет возможность отложенно вычислять значения свойств рабочего стола. |
protected void |
loadSystemColors |
Заполняет переданный в качестве аргумента массив целых чисел текущими значениями системных цветов. |
abstract Map |
mapInputMethodHighlight |
Возвращает карту визуальных атрибутов для абстрактного описания указанной подсветки метода ввода либо null, если соответствие не найдено. |
abstract boolean |
prepareImage |
Подготавливает изображение к отображению. |
void |
removeAWTEventListener |
Удаляет AWTEventListener, чтобы он больше не получал отправляемые события AWTEvent. |
void |
removePropertyChangeListener |
Удаляет указанный слушатель изменений свойств для свойства рабочего стола с заданным именем. |
protected final void |
setDesktopProperty |
Задаёт указанное значение для свойства рабочего стола с заданным именем и генерирует событие изменения свойства, уведомляя слушателей об изменении значения. |
void |
setDynamicLayout |
Управляет тем, проверяется ли компоновка контейнеров динамически во время изменения размера или статически после его завершения. |
void |
setLockingKeyState |
Задаёт состояние указанной блокируемой клавиши клавиатуры. |
abstract void |
sync() |
Синхронизирует графическое состояние этого Toolkit. |
Подробное описание полей
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(), чтобы определить, включена ли эта функция в программе и поддерживается ли она данной операционной системой и/или оконным менеджером. Обратите внимание, что эта функция поддерживается не на всех платформах и, наоборот, на некоторых платформах ее нельзя отключить. На платформах, где динамическая компоновка во время изменения размера не поддерживается (или всегда поддерживается), установка этого свойства не оказывает влияния. Обратите внимание, что на некоторых платформах эту функцию можно включать и отключать как свойство операционной системы или оконного менеджера. На таких платформах свойство динамического изменения размера необходимо установить на уровне операционной системы или оконного менеджера до того, как этот метод сможет вступить в силу. Этот метод не изменяет поддержку или настройки базовой операционной системы или оконного менеджера. Поддержку ОС/оконного менеджера можно запросить с помощью метода getDesktopProperty("awt.dynamicLayoutSupported").- Параметры:
-
dynamic— если true, Container должны повторно компоновать свои компоненты во время изменения размера Container. Если false, компоновка будет проверена после завершения изменения размера. - Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.4
- См. также:
isDynamicLayoutSet
protected boolean isDynamicLayoutSet() throws HeadlessException
- Возвращает:
- true, если проверка компоновки Container выполняется динамически, и false, если проверка выполняется после завершения изменения размера.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.4
- См. также:
isDynamicLayoutActive
public boolean isDynamicLayoutActive() throws HeadlessException
setDynamicLayout(boolean) можно использовать для программного включения или отключения динамической компоновки платформы. Независимо от того, поддерживается ли такое переключение, указано ли true или
false в качестве аргумента либо метод вообще ни разу не вызывался, этот метод возвращает текущее активное поведение платформы, которому будет следовать JDK при выборе политики компоновки во время изменения размера. Если динамическая компоновка в данный момент неактивна, Container повторно компонуют свои компоненты по завершении изменения размера. В результате метод Component.validate() будет вызван только один раз за изменение размера. Если динамическая компоновка в данный момент активна, Container повторно компонуют свои компоненты при каждом нативном событии изменения размера, и метод validate() будет вызываться каждый раз. Поддержку ОС/оконного менеджера можно запросить с помощью метода getDesktopProperty("awt.dynamicLayoutSupported"). Это свойство отражает возможности платформы, но его недостаточно, чтобы определить, включена ли эта функция в данный момент.
- Возвращает:
- true, если динамическая компоновка Container при изменении размера в данный момент активна, и false в противном случае.
- Исключения:
-
HeadlessException— если метод GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.4
- См. также:
getScreenSize
public abstract Dimension getScreenSize() throws HeadlessException
GraphicsConfiguration и GraphicsDevice.- Возвращает:
- размер экрана этого toolkit в пикселях.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getScreenResolution
public abstract int getScreenResolution() throws HeadlessException
- Возвращает:
- разрешение экрана этого toolkit в точках на дюйм.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getScreenInsets
public Insets getScreenInsets(GraphicsConfiguration gc) throws HeadlessException
- Параметры:
-
gc—GraphicsConfiguration - Возвращает:
- отступы экрана этого toolkit в пикселях.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.4
- См. также:
getColorModel
public abstract ColorModel getColorModel() throws HeadlessException
ColorModel — абстрактный класс, инкапсулирующий возможность преобразования между значениями пикселей изображения и его красной, зеленой, синей и альфа-составляющими.
Этот метод toolkit вызывается методом getColorModel класса Component.
- Возвращает:
- цветовую модель экрана этого toolkit.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - См. также:
getFontList
@Deprecated public abstract String[] getFontList()
Для версии 1.1 следующие названия шрифтов устарели (далее указаны заменяющие их названия):
- TimesRoman (используйте Serif)
- Helvetica (используйте SansSerif)
- Courier (используйте Monospaced)
Название шрифта ZapfDingbats также устарело в версии 1.1, однако символы определены в Unicode начиная с 0x2700, и начиная с версии 1.1 Java поддерживает эти символы.
- Возвращает:
- названия шрифтов, доступных в этом toolkit.
- См. также:
getFontMetrics
@Deprecated public abstract FontMetrics getFontMetrics(Font font)
Font getLineMetrics.- Параметры:
-
font— шрифт - Возвращает:
- экранные метрики указанного шрифта в этом toolkit
- См. также:
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, можно указать других поставщиков служб в виде списка, разделенного запятыми. Поставщики служб загружаются после создания toolkit AWT.
Если список поставщиков вспомогательных технологий, заданный системным свойством "javax.accessibility.assistive_technologies", является пустой строкой или содержит только символы пробельные, он игнорируется. Все прочие ошибки обрабатываются с помощью исключения AWTError.
Имена, указанные в свойстве assistive_technologies, используются для запроса каждой реализации поставщика служб. Если запрошенное имя совпадает с именем поставщика служб, будет вызван метод AccessibilityProvider.activate() для активации соответствующего поставщика служб.
- Требования к реализации:
- Если поставщики служб вспомогательных технологий не указаны с помощью системного свойства, эта реализация будет искать файл свойств в следующих местах:
-
${user.home}/.accessibility.properties -
${java.home}/conf/accessibility.properties
assistive_technologies=. Можно указать одного поставщика или список поставщиков, разделенный запятыми. -
- Возвращает:
- toolkit по умолчанию.
- Исключения:
-
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.
- Параметры:
-
image— изображение, состояние которого проверяется. -
width— ширина масштабированной версии, состояние которой проверяется, или-1. -
height— высота масштабированной версии, состояние которой проверяется, или-1. -
observer— объектImageObserver, который будет уведомлён о ходе подготовки изображения. - Возвращает:
- побитовое включающее ИЛИ флагов
ImageObserverдля данных изображения, доступных в данный момент. - См. также:
createImage
public abstract Image createImage(ImageProducer producer)
- Параметры:
-
producer— используемый производитель изображения. - Возвращает:
- изображение с указанным производителем изображения.
- См. также:
createImage
public Image createImage(byte[] imagedata)
Данные должны быть представлены в одном из поддерживаемых этим инструментарием форматов изображений, например GIF или JPEG.
- Параметры:
-
imagedata— массив байтов, представляющий данные изображения в поддерживаемом формате. - Возвращает:
- изображение.
- С момента:
- 1.1
createImage
public abstract Image createImage(byte[] imagedata, int imageoffset, int imagelength)
- Параметры:
-
imagedata— массив байтов, представляющий данные изображения в поддерживаемом формате. -
imageoffset— смещение начала данных в массиве. -
imagelength— длина данных в массиве. - Возвращает:
- изображение.
- С момента:
- 1.1
getPrintJob
public abstract PrintJob getPrintJob(Frame frame, String jobtitle, Properties props)
PrintJob, являющийся результатом запуска операции печати на платформе инструментария.- Параметры:
-
frame— родительский элемент диалогового окна печати. Не может быть null. -
jobtitle— заголовок PrintJob. Заголовок null эквивалентен "". -
props— объект Properties, содержащий ноль или более свойств. Свойства не стандартизированы и различаются в разных реализациях. Поэтому для управления заданием и страницами следует использовать версию этой функции, принимающую объекты JobAttributes и PageAttributes. Этот объект может быть обновлён с учётом выбора пользователя при закрытии окна. Может быть null. - Возвращает:
- объект
PrintJobилиnull, если пользователь отменил задание печати. - Вызывает исключение:
-
NullPointerException— если frame равен null - С момента:
- 1.1
- См. также:
getPrintJob
public PrintJob getPrintJob(Frame frame, String jobtitle, JobAttributes jobAttributes, PageAttributes pageAttributes)
PrintJob, являющийся результатом запуска операции печати на платформе инструментария.- Параметры:
-
frame— родительский элемент диалогового окна печати. Не может быть null. -
jobtitle— заголовок PrintJob. Заголовок null эквивалентен "". -
jobAttributes— набор атрибутов задания, управляющих PrintJob. Атрибуты будут обновлены с учётом выбора пользователя, как описано в документации JobAttributes. Может быть null. -
pageAttributes— набор атрибутов страницы, управляющих PrintJob. Атрибуты будут применены ко всем страницам задания. Они будут обновлены с учётом выбора пользователя, как описано в документации PageAttributes. Может быть null. - Возвращает:
- объект
PrintJobилиnull, если пользователь отменил задание печати. - Вызывает исключение:
-
NullPointerException— если frame равен null -
IllegalArgumentException— если pageAttributes задаёт различные разрешения подачи и поперечной подачи. Также если у этого потока есть доступ к файловой системе и jobAttributes задаёт печать в файл, а указанный целевой файл существует, но является каталогом, а не обычным файлом, не существует, но не может быть создан, или не может быть открыт по какой-либо другой причине. Однако при печати в файл, если также запрошено отображение диалогового окна, пользователю будет предоставлена возможность выбрать файл и продолжить печать. Диалоговое окно проверит допустимость выбранного выходного файла перед возвратом из этого метода. - С момента:
- 1.3
- См. также:
beep
public abstract void beep()
- С момента:
- 1.1
getSystemClipboard
public abstract Clipboard getSystemClipboard() throws HeadlessException
Помимо любых форматов по умолчанию, текст, возвращаемый методом getTransferData() системного буфера обмена, доступен в следующих форматах:
- DataFlavor.stringFlavor
- DataFlavor.plainTextFlavor (устарел)
java.awt.datatransfer.StringSelection, если запрошенный формат — DataFlavor.plainTextFlavor или эквивалентный формат, возвращается Reader. Примечание: Поведение метода getTransferData() системного буфера обмена для DataFlavor.plainTextFlavor и эквивалентных DataFlavor не соответствует определению DataFlavor.plainTextFlavor. Поэтому поддержка DataFlavor.plainTextFlavor и эквивалентных форматов устарела.- Возвращает:
- системный буфер обмена
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.1
- См. также:
getSystemSelection
public Clipboard getSystemSelection() throws HeadlessException
Clipboard. Это позволяет приложению читать и изменять текущее общесистемное выделение. Приложение отвечает за обновление системного выделения при каждом выделении текста пользователем с помощью мыши или клавиатуры. Обычно это реализуется путем установки FocusListener для всех Component, поддерживающих выделение текста, и обновления системного выделения Clipboard при изменении выделения внутри Component между событиями FOCUS_GAINED и FOCUS_LOST, доставляемыми этому Component. Правильное обновление системного выделения обеспечивает корректное взаимодействие Java-приложения с нативными приложениями и другими Java-приложениями, одновременно работающими в системе. Обратите внимание, что java.awt.TextComponent и javax.swing.text.JTextComponent уже соблюдают это правило. При использовании этих классов и их подклассов разработчикам не нужно писать дополнительный код.
Некоторые платформы не поддерживают Clipboard системного выделения. На таких платформах этот метод возвращает null. В этом случае приложение освобождается от обязанности обновлять Clipboard системного выделения, как описано выше.
- Возвращает:
- системное выделение в виде
Clipboardилиnull, если нативная платформа не поддерживаетClipboardсистемного выделения - Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.4
- См. также:
getMenuShortcutKeyMask
@Deprecated(since="10") public int getMenuShortcutKeyMask() throws HeadlessException
getMenuShortcutKeyMaskEx() Сочетания клавиш меню, задаваемые классом MenuShortcut, обрабатываются классом MenuBar.
По умолчанию этот метод возвращает Event.CTRL_MASK. Реализации Toolkit должны переопределять этот метод, если клавиша Control не подходит для использования в качестве клавиши-ускорителя.
- Возвращает:
- маску модификаторов класса
Event, используемую для сочетаний клавиш меню в этом toolkit. - Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.1
- См. также:
getMenuShortcutKeyMaskEx
public int getMenuShortcutKeyMaskEx() throws HeadlessException
Сочетания клавиш меню, задаваемые классом MenuShortcut, обрабатываются классом MenuBar.
По умолчанию этот метод возвращает InputEvent.CTRL_DOWN_MASK. Реализации Toolkit должны переопределять этот метод, если клавиша Control не подходит для использования в качестве клавиши-ускорителя.
- Возвращает:
- маску модификаторов класса
InputEvent, используемую для сочетаний клавиш меню в этом toolkit - Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 10
- См. также:
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 - Начиная с:
- 1.3
- См. также:
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 - Начиная с:
- 1.3
- См. также:
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 - Возвращает:
- созданный курсор
- Исключения:
-
IndexOutOfBoundsException— если значения hotSpot выходят за границы курсора -
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.2
- См. также:
getBestCursorSize
public Dimension getBestCursorSize(int preferredWidth, int preferredHeight) throws HeadlessException
Примечание: если используется изображение, размеры которого не совпадают с поддерживаемым размером (возвращаемым этим методом), реализация Toolkit попытается изменить размер изображения до поддерживаемого. Поскольку преобразование изображений с низким разрешением затруднительно, качество изображения курсора неподдерживаемого размера не гарантируется. Поэтому рекомендуется вызвать этот метод и использовать изображение подходящего размера, чтобы избежать преобразования изображения.
- Параметры:
-
preferredWidth— предпочтительная ширина курсора, которую должен использовать компонент. -
preferredHeight— предпочтительная высота курсора, которую должен использовать компонент. - Возвращает:
- наиболее близкий поддерживаемый размер курсора или размер 0,0, если реализация Toolkit не поддерживает пользовательские курсоры.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.2
- См. также:
getMaximumCursorColors
public int getMaximumCursorColors() throws HeadlessException
Примечание: если используется изображение, палитра которого содержит больше цветов, чем поддерживаемый максимум, реализация Toolkit попытается сократить палитру до максимального количества цветов. Поскольку преобразование изображений с низким разрешением затруднительно, качество изображения курсора, содержащего больше цветов, чем поддерживает система, не гарантируется. Поэтому рекомендуется вызвать этот метод и использовать подходящее изображение, чтобы избежать преобразования изображения.
- Возвращает:
- максимальное количество цветов или ноль, если эта реализация Toolkit не поддерживает пользовательские курсоры.
- Исключения:
-
HeadlessException— если GraphicsEnvironment.isHeadless() возвращает true - Начиная с:
- 1.2
- См. также:
isFrameStateSupported
public boolean isFrameStateSupported(int state) throws HeadlessException
Frames. Этот метод сообщает, поддерживается ли концепция пользовательского интерфейса, например развёртывание или сворачивание в значок. Для «составных» состояний, таких как Frame.ICONIFIED|Frame.MAXIMIZED_VERT, метод всегда возвращает false. Иными словами, общее правило таково: значимы только запросы, в которых в качестве аргумента указана одна константа состояния frame. Обратите внимание, что поддержка определённой концепции зависит от платформы. Из-за ограничений нативной платформы объект Toolkit может сообщать, что определённое состояние поддерживается, но при этом не иметь возможности применить его к заданному frame. Это обстоятельство имеет два следствия:
- Только возвращаемое значение
falseдля данного метода действительно указывает на то, что заданное состояние не поддерживается. Если метод возвращаетtrue, заданное состояние всё ещё может не поддерживаться и/или быть недоступным для конкретного frame. - Разработчику следует проверить значение метода
WindowEvent.getNewState()у полученногоWindowEventчерезWindowStateListener, а не предполагать, что состояние, переданное методуsetExtendedState(), обязательно будет применено. Дополнительные сведения см. в документации к методуFrame.setExtendedState(int).
- Параметры:
-
state- одна из именованных констант состояния frame. - Возвращает:
-
true, если это состояние frame поддерживается данной реализацией 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, если текущий toolkit поддерживает режим «поверх всех окон», иначе возвращаетfalse - Начиная с версии:
- 1.6
- См. также:
isModalityTypeSupported
public abstract boolean isModalityTypeSupported(Dialog.ModalityType modalityType)
Dialog.ModalityType.MODELESS.- Параметры:
-
modalityType- тип модальности, поддержку которого нужно проверить для этого toolkit - Возвращает:
-
true, если текущий toolkit поддерживает указанный тип модальности, иfalseв противном случае - Начиная с версии:
- 1.6
- См. также:
isModalExclusionTypeSupported
public abstract boolean isModalExclusionTypeSupported(Dialog.ModalExclusionType modalExclusionType)
Dialog.ModalExclusionType.NO_EXCLUDE.- Параметры:
-
modalExclusionType- тип исключения из модальности, поддержку которого нужно проверить для этого toolkit - Возвращает:
-
true, если текущий toolkit поддерживает указанный тип исключения из модальности, и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()
AWTEventListeners, зарегистрированных в этом наборе средств разработки. Слушатели могут быть возвращены в объектах AWTEventListenerProxy, которые также содержат маску событий для соответствующего слушателя. Обратите внимание, что объекты слушателей, добавленные несколько раз, встречаются в возвращаемом массиве только один раз.- Возвращает:
- все
AWTEventListeners или пустой массив, если в данный момент слушатели не зарегистрированы - Начиная с:
- 1.4
- См. также:
getAWTEventListeners
public AWTEventListener[] getAWTEventListeners(long eventMask)
AWTEventListeners, зарегистрированных в этом наборе средств разработки и прослушивающих все типы событий, указанные в аргументе eventMask. Слушатели могут быть возвращены в объектах AWTEventListenerProxy, которые также содержат маску событий для соответствующего слушателя. Обратите внимание, что объекты слушателей, добавленные несколько раз, встречаются в возвращаемом массиве только один раз.- Параметры:
-
eventMask— битовая маска типов событий для прослушивания - Возвращает:
- все
AWTEventListeners, зарегистрированные в этом наборе средств разработки для указанных типов событий, или пустой массив, если в данный момент такие слушатели не зарегистрированы - Начиная с:
- 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://docs.oracle.com/en/java/javase/25/docs/api/java.desktop/java/awt/Toolkit.html
GraphicsEnvironment.getAvailableFontFamilyNames()