Spec-Zone.ru › OpenJDK 17

Класс Window

java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
Все реализованные интерфейсы:
ImageObserver, MenuContainer, Serializable, Accessible
Прямые известные подклассы:
BasicToolBarUI.DragWindow, Dialog, Frame, JWindow
public class Window extends Container implements Accessible
Объект типа Window представляет собой окно верхнего уровня без рамок и без меню. По умолчанию используется компоновщик BorderLayout.

Окно должно иметь родительское окно (frame, диалоговое окно или другое окно) при создании.

В многоэкранной среде вы можете создать Window на другом экране, создав Window с помощью Window(Window, GraphicsConfiguration). Объект GraphicsConfiguration является одним из объектов GraphicsConfiguration целевого экрана.

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

Diagram shows virtual device containing 4 physical screens. Primary
 physical screen shows coords (0,0), other screen shows (-80,-100).

В такой среде при вызове setLocation вы должны передать виртуальную координату в этот метод. Аналогично, вызов getLocationOnScreen для Window возвращает координаты виртуального устройства. Используйте метод getBounds объекта GraphicsConfiguration, чтобы определить его начало в системе виртуальных координат.

Следующий код устанавливает положение Window в (10, 10) относительно начала физического экрана соответствующего GraphicsConfiguration. Если границы GraphicsConfiguration не учитываются, положение Window будет установлено в (10, 10) относительно системы виртуальных координат и отобразится на основном физическом экране, что может отличаться от физического экрана указанного GraphicsConfiguration.

      Window w = new Window(Window owner, GraphicsConfiguration gc);
      Rectangle bounds = gc.getBounds();
      w.setLocation(10 + bounds.x, 10 + bounds.y);
 

Примечание: расположение и размер окон верхнего уровня (включая Window, Frame и Dialog) контролируются системой управления окнами рабочего стола. Вызовы setLocation, setSize и setBounds являются запросами (а не директивами), которые передаются системе управления окнами. Будут предприняты все усилия для выполнения этих запросов. Однако в некоторых случаях система управления окнами может игнорировать такие запросы или изменить запрашиваемую геометрию, чтобы разместить и масштабировать Window в соответствии с настройками рабочего стола.

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

Из-за асинхронного характера обработки событий с помощью нативных функций результаты, возвращаемые getBounds, getLocation, getLocationOnScreen и getSize, могут не отражать фактической геометрии окна на экране до обработки последнего запроса. Во время обработки последующих запросов эти значения могут измениться соответствующим образом, пока система управления окнами выполняет запросы.

Приложение может произвольно установить размер и положение невидимого Window, но система управления окнами может впоследствии изменить его размер и/или положение при отображении Window. Будет сгенерировано одно или несколько событий ComponentEvent, чтобы указать новую геометрию.

Окна способны генерировать следующие события WindowEvents: WindowOpened, WindowClosed, WindowGainedFocus, WindowLostFocus.

С:
1.0
См. также:
  • WindowEvent
  • addWindowListener(java.awt.event.WindowListener)
  • BorderLayout
  • Сериализованная форма

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

Модификатор и тип Класс Описание
protected class  Window.AccessibleAWTWindow
Этот класс реализует поддержку доступности для класса Window.
static enum  Window.Type
Перечисление доступных типов окон.

Вложенные классы/интерфейсы, объявленные в классе java.awt.Container

Container.AccessibleAWTContainer

Вложенные классы/интерфейсы, объявленные в классе java.awt.Component

Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy

Краткое описание полей

Поля, объявленные в классе java.awt.Component

accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

Поля, объявленные в интерфейсе java.awt.image.ImageObserver

ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH

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

Конструктор Описание
Window(Frame owner)
Создает новое, первоначально невидимое окно с указанным Frame в качестве владельца.
Window(Window owner)
Создает новое, первоначально невидимое окно с указанным Window в качестве владельца.
Window(Window owner, GraphicsConfiguration gc)
Создает новое, первоначально невидимое окно с указанным владельцем Window и GraphicsConfiguration устройства экрана.

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

Modifier and Type Method Description
void addNotify()
Делает это окно отображаемым, создав подключение к его нативному ресурсу экрана.
void addPropertyChangeListener(PropertyChangeListener listener)
Добавляет PropertyChangeListener в список слушателей.
void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Добавляет PropertyChangeListener в список слушателей для определённого свойства.
void addWindowFocusListener(WindowFocusListener l)
Добавляет указанного слушателя событий фокуса окна для получения событий окна от данного окна.
void addWindowListener(WindowListener l)
Добавляет указанного слушателя событий окна для получения событий окна от данного окна.
void addWindowStateListener(WindowStateListener l)
Добавляет указанного слушателя состояния окна для получения событий окна от данного окна.
void applyResourceBundle(String rbName)
Устарело.
С J2SE 1.4 заменено на Component.applyComponentOrientation.
void applyResourceBundle(ResourceBundle rb)
Устарело.
С J2SE 1.4 заменено на Component.applyComponentOrientation.
void createBufferStrategy(int numBuffers)
Создаёт новую стратегию для многобуферизации на этом компоненте.
void createBufferStrategy(int numBuffers, BufferCapabilities caps)
Создаёт новую стратегию для многобуферизации на этом компоненте с необходимыми возможностями буфера.
void dispose()
Освобождает все нативные ресурсы экрана, используемые этим Window, его подкомпонентами и всеми его дочерними элементами, которые он владеет.
AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим окном.
Color getBackground()
Получает цвет фона этого окна.
BufferStrategy getBufferStrategy()
Возвращает BufferStrategy, используемый этим компонентом.
boolean getFocusableWindowState()
Возвращает, может ли это окно стать фокусированным окном, если оно удовлетворяет другим требованиям, изложенным в isFocusableWindow.
final Container getFocusCycleRootAncestor()
Всегда возвращает null, потому что окна не имеют предков; они представляют вершину иерархии компонентов.
Component getFocusOwner()
Возвращает дочерний компонент этого окна, у которого есть фокус, если это окно имеет фокус; в противном случае возвращает null.
Set<AWTKeyStroke> getFocusTraversalKeys(int id)
Получает клавишу перехода фокуса для этого окна.
List<Image> getIconImages()
Возвращает последовательность изображений, которые будут отображаться в качестве значка для этого окна.
InputContext getInputContext()
Получает контекст ввода для этого окна.
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
Возвращает массив всех объектов, текуще зарегистрированных как FooListener в этом Window.
Locale getLocale()
Получает объект Locale, связанный с этим окном, если локаль была установлена.
Dialog.ModalExclusionType getModalExclusionType()
Возвращает тип исключения модальности этого окна.
Component getMostRecentFocusOwner()
Возвращает дочерний компонент этого окна, который получит фокус, когда это окно получает фокус.
float getOpacity()
Возвращает непрозрачность окна.
Window[] getOwnedWindows()
Возвращает массив всех окон, которыми в данный момент владеет это окно.
Window getOwner()
Возвращает владельца этого окна.
static Window[] getOwnerlessWindows()
Возвращает массив всех Window, созданных этим приложением, у которых нет владельца.
Shape getShape()
Возвращает форму окна.
Toolkit getToolkit()
Возвращает инструменты этого фрейма.
Window.Type getType()
Возвращает тип окна.
final String getWarningString()
Получает строку предупреждения, отображаемую с этим окном.
WindowFocusListener[] getWindowFocusListeners()
Возвращает массив всех зарегистрированных слушателей событий фокуса окна на этом окне.
WindowListener[] getWindowListeners()
Возвращает массив всех зарегистрированных слушателей событий окна на этом окне.
static Window[] getWindows()
Возвращает массив всех Window, как имеющих, так и не имеющих владельца, созданных этим приложением.
WindowStateListener[] getWindowStateListeners()
Возвращает массив всех зарегистрированных слушателей состояния окна на этом окне.
void hide()
Устарело.
С версии JDK 1.5 заменено на setVisible(boolean).
boolean isActive()
Возвращает, активно ли это окно.
final boolean isAlwaysOnTop()
Возвращает, является ли это окно окном всегда сверху.
boolean isAlwaysOnTopSupported()
Возвращает, поддерживается ли режим всегда сверху для этого окна.
boolean isAutoRequestFocus()
Возвращает, должно ли это окно получить фокус при последующем отображении (с помощью вызова setVisible(true)) или при перемещении вперёд (с помощью вызова toFront()).
final boolean isFocusableWindow()
Возвращает, может ли это окно стать фокусированным окном, то есть, может ли это окно или любой из его подкомпонентов стать владельцем фокуса.
final boolean isFocusCycleRoot()
Всегда возвращает true, потому что все окна должны быть корнями цикла перехода фокуса.
boolean isFocused()
Возвращает, имеет ли это окно фокус.
boolean isLocationByPlatform()
Возвращает true, если это окно будет отображаться в стандартном расположении для нативной системы окон в следующий раз, когда это окно станет видимым.
boolean isOpaque()
Указывает, является ли окно в данный момент непрозрачным.
boolean isShowing()
Проверяет, отображается ли это окно на экране.
boolean isValidateRoot()
Указывает, является ли этот контейнер корнем валидации.
void pack()
Принудительно изменяет размер этого окна так, чтобы оно соответствовало предпочтительному размеру и макетам его подкомпонентов.
void paint(Graphics g)
Отображает контейнер.
boolean postEvent(Event e)
Устарело.
С версии JDK 1.1 заменено на dispatchEvent(AWTEvent).
protected void processEvent(AWTEvent e)
Обрабатывает события в этом окне.
protected void processWindowEvent(WindowEvent e)
Обрабатывает события окна, происходящие в этом окне, рассылаемые любым зарегистрированным объектам WindowListener.
protected void processWindowFocusEvent(WindowEvent e)
Обрабатывает событие фокуса окна, происходящее в этом окне, рассылаемые любым зарегистрированным объектам WindowFocusListener.
protected void processWindowStateEvent(WindowEvent e)
Обрабатывает событие состояния окна, происходящее в этом окне, рассылаемые любым зарегистрированным объектам WindowStateListener.
void removeWindowFocusListener(WindowFocusListener l)
Удаляет указанного слушателя событий фокуса окна, чтобы он больше не получал события окна от этого окна.
END_OF_DOCUMENT_MARKER
void removeWindowListener(WindowListener l)
Удаляет указанный слушатель оконных событий, чтобы он больше не получал события от этого окна.
void removeWindowStateListener(WindowStateListener l)
Удаляет указанного слушателя состояния окна, чтобы он больше не получал события от этого окна.
void reshape(int x, int y, int width, int height)
Устарело.
С версии JDK 1.1 заменено на setBounds(int, int, int, int).
final void setAlwaysOnTop(boolean alwaysOnTop)
Устанавливает, должно ли это окно всегда быть поверх других окон.
void setAutoRequestFocus(boolean autoRequestFocus)
Устанавливает, должно ли это окно получать фокус при последующем отображении (с вызовом setVisible(true)) или перемещении на передний план (с вызовом toFront()).
void setBackground(Color bgColor)
Устанавливает цвет фона этого окна.
void setBounds(int x, int y, int width, int height)
Перемещает и изменяет размер этого компонента.
void setBounds(Rectangle r)
Перемещает и изменяет размер этого компонента в соответствии с новым прямоугольником границ r.
void setCursor(Cursor cursor)
Устанавливает изображение курсора на указанный курсор.
void setFocusableWindowState(boolean focusableWindowState)
Устанавливает, может ли это окно стать фокусированным окном, если оно удовлетворяет другим требованиям, изложенным в isFocusableWindow.
final void setFocusCycleRoot(boolean focusCycleRoot)
Ничего не делает, так как окна должны всегда быть корнями цикла перехода фокуса.
void setIconImage(Image image)
Устанавливает изображение, которое будет отображаться как значок этого окна.
void setIconImages(List<? extends Image> icons)
Устанавливает последовательность изображений, которые будут отображаться как значок этого окна.
void setLocation(int x, int y)
Перемещает этот компонент в новое местоположение.
void setLocation(Point p)
Перемещает этот компонент в новое местоположение.
void setLocationByPlatform(boolean locationByPlatform)
Устанавливает, должно ли это окно отображаться по умолчанию для системного отображения или в текущем местоположении (возвращаемом getLocation) в следующий раз, когда окно будет отображено.
void setLocationRelativeTo(Component c)
Устанавливает расположение окна относительно указанного компонента в соответствии со следующими сценариями.
void setMinimumSize(Dimension minimumSize)
Устанавливает минимальный размер этого окна до постоянного значения.
void setModalExclusionType(Dialog.ModalExclusionType exclusionType)
Указывает тип исключения мода для этого окна.
void setOpacity(float opacity)
Устанавливает непрозрачность окна.
void setShape(Shape shape)
Устанавливает форму окна.
void setSize(int width, int height)
Изменяет размер этого компонента так, чтобы его ширина была width, а высота — height.
void setSize(Dimension d)
Изменяет размер этого компонента так, чтобы его ширина была d.width, а высота — d.height.
void setType(Window.Type type)
Устанавливает тип окна.
void setVisible(boolean b)
Отображает или скрывает это Window в зависимости от значения параметра b.
void show()
Устарело.
С версии JDK 1.5 заменено на setVisible(boolean).
void toBack()
Если это окно отображается, отправляет это окно на задний план, что может привести к потере фокуса или активации, если это фокусированное или активное окно.
void toFront()
Если это окно отображается, выводит это окно вперёд и может сделать его фокусированным окном.

Methods declared in class java.awt.Container

add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree

Methods declared in class java.awt.Component

action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

Methods declared in class java.lang.Object

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

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

Окно

public Window(Frame owner)
Создает новое, изначально невидимое окно с указанным Frame в качестве владельца. Окно не будет доступно для фокусировки, если его владелец не отображается на экране.

Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если эта проверка завершается ошибкой с SecurityException, создаётся баннер предупреждения.

Параметры:
owner - the Frame to act as owner or null if this window has no owner
Исключения:
IllegalArgumentException - если owner's GraphicsConfiguration не из устройства отображения
HeadlessException - когда GraphicsEnvironment.isHeadless возвращает true
См. также:
  • GraphicsEnvironment.isHeadless()
  • isShowing()

Окно

public Window(Window owner)
Создаёт новое, изначально невидимое окно с указанным Window в качестве владельца. Это окно не будет доступно для фокусировки, пока его ближайший владелец Frame или Dialog не отображается на экране.

Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если проверка завершается ошибкой с SecurityException, то создаётся баннер предупреждения.

Параметры:
owner - the Window to act as owner or null if this window has no owner
Исключения:
IllegalArgumentException - если owner's GraphicsConfiguration не из устройства отображения
HeadlessException - когда GraphicsEnvironment.isHeadless() возвращает true
С:
1.2
См. также:
  • GraphicsEnvironment.isHeadless()
  • isShowing()

Окно

public Window(Window owner, GraphicsConfiguration gc)
Создаёт новое, изначально невидимое окно с указанным владельцем Window и GraphicsConfiguration устройства отображения. Окно не будет доступно для фокусировки, пока ближайший владелец Frame или Dialog отображается на экране.

Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если проверка завершается ошибкой с SecurityException, то создаётся баннер предупреждения.

Параметры:
owner - the window to act as owner or null if this window has no owner
gc - the GraphicsConfiguration устройства отображения; если gc равен null, используется системный по умолчанию GraphicsConfiguration
Исключения:
IllegalArgumentException - если gc не из устройства отображения
HeadlessException - когда GraphicsEnvironment.isHeadless() возвращает true
С:
1.3
См. также:
  • GraphicsEnvironment.isHeadless()
  • GraphicsConfiguration.getBounds()
  • isShowing()

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

getIconImages

public List<Image> getIconImages()
Возвращает последовательность изображений, которые должны отображаться в виде значка для этого окна.

Этот метод возвращает копию внутреннего хранилища списка, поэтому все операции с возвращаемым объектом не повлияют на поведение окна.

Возвращает:
копию списка значков для этого окна, или пустой список, если у этого окна нет значков.
С:
1.6
См. также:
  • setIconImages(java.util.List<? extends java.awt.Image>)
  • setIconImage(Image)

setIconImages

public void setIconImages(List<? extends Image> icons)
Устанавливает последовательность изображений, которые должны отображаться в виде значка для этого окна. Последующие вызовы getIconImages всегда будут возвращать копию списка icons.

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

Список icons может содержать MultiResolutionImage изображения. Подходящее изображение в зависимости от разрешения экрана извлекается из базового изображения MultiResolutionImage и добавляется в список значков, а базовое изображение с разрешением удаляется из списка. Список icons сканируется на наличие изображений наиболее подходящих размеров с начала. Если список содержит несколько изображений одного размера, используется первое.

Окна без владельца, для которых не указан значок, используют значок по умолчанию для платформы. Значок окна-потомка может быть унаследован от владельца, если явно не перезаписан. Установка значка на null или пустой список восстанавливает поведение по умолчанию.

Примечание: Системы окон native могут использовать разные изображения разных размеров для представления окна в зависимости от контекста (например, декорации окна, список окон, панель задач и т. д.). Они также могут использовать только одно изображение для всех контекстов или вообще не использовать изображение.

Параметры:
icons - список изображений значка для отображения.
С:
1.6
См. также:
  • getIconImages()
  • setIconImage(Image)

setIconImage

public void setIconImage(Image image)
Устанавливает изображение, которое должно отображаться в качестве значка для этого окна.

Этот метод может быть использован вместо setIconImages() для указания единственного изображения в качестве значка окна.

Следующее утверждение:

     setIconImage(image);
 
эквивалентно:
     ArrayList<Image> imageList = new ArrayList<Image>();
     imageList.add(image);
     setIconImages(imageList);
 

Примечание: Системы окон native могут использовать разные изображения разных размеров для представления окна в зависимости от контекста (например, декорации окна, список окон, панель задач и т. д.). Они также могут использовать только одно изображение для всех контекстов или вообще не использовать изображение.

Параметры:
image - изображение значка для отображения.
С:
1.6
См. также:
  • setIconImages(java.util.List<? extends java.awt.Image>)
  • getIconImages()

addNotify

public void addNotify()
Делает это окно отображаемым, создавая соединение с его native ресурсом экрана. Этот метод вызывается внутри toolkit и не должен вызываться напрямую программами.
Переопределяет:
addNotify в классе Container
С:
1.0
См. также:
  • Component.isDisplayable()
  • Container.removeNotify()

pack

public void pack()
Заставляет это окно быть размером, соответствующим предпочтительному размеру и макетам его подкомпонентов. Результирующая ширина и высота окна автоматически увеличиваются, если хотя бы одна из размеров меньше минимального размера, указанного предыдущим вызовом метода setMinimumSize.

Если окно и/или его владелец ещё не отображаемы, оба из них делаются отображаемыми перед вычислением предпочтительного размера. Окно валидируется после того, как его размер вычисляется.

См. также:
  • Component.isDisplayable()
  • setMinimumSize(java.awt.Dimension)

setMinimumSize

public void setMinimumSize(Dimension minimumSize)
Устанавливает минимальный размер этого окна на постоянное значение. Последующие вызовы getMinimumSize всегда будут возвращать это значение. Если текущий размер окна меньше minimumSize, размер окна автоматически увеличивается, чтобы соответствовать минимальному размеру.

Если методы setSize или setBounds вызываются после этого с шириной или высотой меньше, чем указано методом setMinimumSize, окно автоматически увеличивается, чтобы соответствовать значению minimumSize. Значение minimumSize также влияет на поведение метода pack.

Поведение по умолчанию восстанавливается путём установки параметра минимального размера в значение null.

Операции изменения размера могут быть ограничены, если пользователь пытается изменить размер окна ниже значения minimumSize. Это поведение зависит от платформы.

Переопределяет:
setMinimumSize в классе Component
Параметры:
minimumSize - новый минимальный размер этого окна
С:
1.6
См. также:
  • Component.setMinimumSize(java.awt.Dimension)
  • Container.getMinimumSize()
  • Component.isMinimumSizeSet()
  • setSize(Dimension)
  • pack()

УстановитьРазмер

public void setSize(Dimension d)
Изменяет размер этого компонента на ширину d.width и высоту d.height.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Значения d.width и d.height автоматически увеличиваются, если любое из них меньше минимального размера, указанного предыдущим вызовом setMinimumSize.

Метод изменяет данные, связанные с геометрией. Поэтому система отображения может проигнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window размещался и масштабировался в соответствии с настройками рабочего стола.

Overrides:
setSize в классе Component
Параметры:
d - размер, определяющий новый размер этого компонента
С:
1.6
См. также:
  • Component.getSize()
  • setBounds(int, int, int, int)
  • setMinimumSize(java.awt.Dimension)

УстановитьРазмер

public void setSize(int width, int height)
Изменяет размер этого компонента на ширину width и высоту height.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Значения width и height автоматически увеличиваются, если любое из них меньше минимального размера, указанного предыдущим вызовом setMinimumSize.

Метод изменяет данные, связанные с геометрией. Поэтому система отображения может проигнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window размещался и масштабировался в соответствии с настройками рабочего стола.

Overrides:
setSize в классе Component
Параметры:
width - новая ширина этого компонента в пикселях
height - новая высота этого компонента в пикселях
С:
1.6
См. также:
  • Component.getSize()
  • setBounds(int, int, int, int)
  • setMinimumSize(java.awt.Dimension)

УстановитьПоложение

public void setLocation(int x, int y)
Перемещает этот компонент в новое положение. Левый верхний угол нового положения задаётся параметрами x и y в системе координат родителя этого компонента.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Метод изменяет данные, связанные с геометрией. Поэтому система отображения может проигнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window размещался и масштабировался в соответствии с настройками рабочего стола.

Overrides:
setLocation в классе Component
Параметры:
x - координата x левого верхнего угла нового положения в системе координат родителя
y - координата y левого верхнего угла нового положения в системе координат родителя
См. также:
  • Component.getLocation()
  • Component.setBounds(int, int, int, int)
  • Component.invalidate()

УстановитьПоложение

public void setLocation(Point p)
Перемещает этот компонент в новое положение. Левый верхний угол нового положения задаётся точкой p. Точка p задана в системе координат родителя.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Метод изменяет данные, связанные с геометрией. Поэтому система отображения может проигнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window размещался и масштабировался в соответствии с настройками рабочего стола.

Overrides:
setLocation в классе Component
Параметры:
p - точка, определяющая левый верхний угол нового положения, заданная в системе координат родителя этого компонента
См. также:
  • Component.getLocation()
  • Component.setBounds(int, int, int, int)
  • Component.invalidate()

reshape

@Deprecated public void reshape(int x, int y, int width, int height)
Устарело.
Начиная с JDK версии 1.1, заменено на setBounds(int, int, int, int).
Описание скопировано из класса: Component
Изменяет прямоугольник области для этого компонента.
Overrides:
reshape в классе Component
Параметры:
x - координата x левого верхнего угла прямоугольника
y - координата y левого верхнего угла прямоугольника
width - ширина прямоугольника
height - высота прямоугольника

УстановитьВидимость

public void setVisible(boolean b)
Отображает или скрывает этот Window в зависимости от значения параметра b.

Если метод отображает окно, то окно также фокусируется при следующих условиях:

  • Окно Window соответствует требованиям, изложенным в методе isFocusableWindow().
  • Свойство Window окна autoRequestFocus имеет значение true.
  • Система отображения позволяет окну Window получить фокус.
Исключение делается для второго условия (значения свойства autoRequestFocus). Свойство не учитывается, если окно является модальным диалоговым окном, которое блокирует окно, имеющее фокус в настоящее время.

Разработчики не должны предполагать, что окно имеет фокус или активно, пока оно не получит событие WINDOW_GAINED_FOCUS или WINDOW_ACTIVATED.

Overrides:
setVisible в классе Component
Параметры:
b - если true, делает Window видимым, в противном случае скрывает Window. Если Window и/или его владелец ещё не отображаются, оба делаются отображаемыми. Window будет проверен перед отображением. Если Window уже отображается, это приведет к отображению Window впереди.

Если false, скрывает этот Window, его подкомпоненты и все его дочерние элементы, принадлежащие ему. Window и его подкомпоненты могут быть сделаны видимыми снова с помощью вызова #setVisible(true).

См. также:
  • Component.isDisplayable()
  • Component.setVisible(boolean)
  • toFront()
  • dispose()
  • setAutoRequestFocus(boolean)
  • isFocusableWindow()

show

@Deprecated public void show()
Устарело.
Начиная с JDK версии 1.5, заменено на setVisible(boolean).
Делает окно видимым. Если окно и/или его владелец ещё не отображаются, оба делаются отображаемыми. Окно будет валидировано перед отображением. Если окно уже видимо, это выведет окно вперёд.
Overrides:
show в классе Component
См. также:
  • Component.isDisplayable()
  • toFront()

hide

@Deprecated public void hide()
Устарело.
Начиная с JDK версии 1.5, заменено на setVisible(boolean).
Скрыть это окно, его подкомпоненты и все принадлежащие ему дочерние элементы. Окно и его подкомпоненты могут быть сделаны видимыми снова с помощью вызова show.
Overrides:
hide в классе Component
См. также:
  • show()
  • dispose()

dispose

public void dispose()
Освобождает все нативные ресурсы экрана, используемые этим Window, его подкомпонентами и всеми его дочерними элементами, которые он владеет. То есть, ресурсы этих Component будут уничтожены, любая занимаемая ими память будет возвращена ОС, и они будут помечены как недоступные для отображения.

Этот Window и его подкомпоненты могут быть снова отображены, пересоздав нативные ресурсы с последующим вызовом pack или show. Состояния пересозданных Window и его подкомпонентов будут идентичны состояниям этих объектов в момент, когда Window был удалён (без учёта дополнительных изменений между этими действиями).

Примечание: Когда последний отображаемый в виртуальной машине Java (VM) окно будет удалено, VM может завершиться. Подробнее см. Проблемы с потоками AWT.

См. также:
  • Component.isDisplayable()
  • pack()
  • show()

toFront

public void toFront()
Если это окно видимое, выводит это окно вперёд и может сделать его активным.

Размещает это окно вверху стека и отображает его поверх других окон в этой VM. Никаких действий не будет, если это окно не отображается. Некоторые платформы не позволяют окнам, которые владеют другими окнами, появляться поверх этих принадлежащих им окон. Некоторые платформы могут не позволить этой VM разместить свои окна поверх окон приложений или окон других VM. Это разрешение может зависеть от того, уже ли фокусировано окно в этой VM. Будет предпринята вся попытка поднять это окно как можно выше в стеке; однако разработчики не должны предполагать, что этот метод поместит это окно поверх всех других окон в любой ситуации.

Разработчики никогда не должны предполагать, что это окно является активным или фокусированным, пока это окно не получит событие WINDOW_GAINED_FOCUS или WINDOW_ACTIVATED. На платформах, где окно вверху стека является фокусированным, этот метод вероятно установит фокус на это окно (если оно ещё не фокусировано) при следующих условиях:

  • Окно соответствует требованиям, описанным в методе isFocusableWindow().
  • Свойство окна autoRequestFocus имеет значение true.
  • Система нативного оконного менеджера позволяет окну получить фокус.
На платформах, где порядок стека обычно не влияет на фокусированное окно, этот метод вероятно оставит фокусированные и активные окна без изменений.

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

Если это окно заблокировано модальным диалоговым окном, то блокирующее диалоговое окно выводится вперёд и остаётся поверх заблокированного окна.

См. также:
  • toBack()
  • setAutoRequestFocus(boolean)
  • isFocusableWindow()

toBack

public void toBack()
Если это окно видимое, помещает это окно в самый низ стека и может привести к потере фокуса или активации, если это фокусированное или активное окно.

Размещает это окно внизу стека и отображает его за другими окнами в этой VM. Никаких действий не будет, если это окно не отображается. Некоторые платформы не позволяют окнам, которые принадлежат другим окнам, появляться ниже их владельцев. Будет предпринята вся попытка поместить это окно как можно ниже в стеке; однако разработчики не должны предполагать, что этот метод поместит это окно ниже всех других окон в любой ситуации.

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

См. также:
  • toFront()

getToolkit

public Toolkit getToolkit()
Возвращает набор инструментов этого фрейма.
Переопределяет:
getToolkit в классе Component
Возвращает:
набор инструментов этого окна.
См. также:
  • Toolkit
  • Toolkit.getDefaultToolkit()
  • Component.getToolkit()

getWarningString

public final String getWarningString()
Получает строку предупреждения, отображаемую с этим окном. Если это окно небезопасно, строка предупреждения отображается где-то в видимой области окна. Окно небезопасно, если существует менеджер безопасности и менеджер безопасности отказывается AWTPermission("showWindowWithoutWarningBanner").

Если окно безопасно, то getWarningString возвращает null. Если окно небезопасно, этот метод проверяет системную переменную awt.appletWarning и возвращает строковое значение этой переменной.

Возвращает:
строку предупреждения для этого окна.

getLocale

public Locale getLocale()
Получает объект Locale, связанный с этим окном, если язык был задан. Если язык не был задан, возвращается язык по умолчанию.
Переопределяет:
getLocale в классе Component
Возвращает:
язык, установленный для этого окна.
С момента:
1.1
См. также:
  • Locale

getInputContext

public InputContext getInputContext()
Получает контекст ввода для этого окна. Окно всегда имеет контекст ввода, который используется подкомпонентами, если они не создают и не устанавливают свой собственный.
Переопределяет:
getInputContext в классе Component
Возвращает:
контекст ввода, используемый этим компонентом; null если контекст не может быть определён
С момента:
1.2
См. также:
  • Component.getInputContext()

setCursor

public void setCursor(Cursor cursor)
Устанавливает изображение курсора на указанный курсор.

Метод может не иметь визуального эффекта, если реализация платформы Java и/или нативная система не поддерживают изменение формы курсора мыши.

Переопределяет:
setCursor в классе Component
Параметры:
cursor - Одна из констант, определённых классом Cursor. Если этот параметр null, курсор для этого окна будет установлен на тип Cursor.DEFAULT_CURSOR.
С момента:
1.1
См. также:
  • Component.getCursor()
  • Cursor

getOwner

public Window getOwner()
Возвращает владельца этого окна.
Возвращает:
владелец этого окна
С момента:
1.2

getOwnedWindows

public Window[] getOwnedWindows()
Возвращает массив, содержащий все окна, которыми в настоящее время владеет это окно.
Возвращает:
массив всех принадлежащих окон
С момента:
1.2

getWindows

public static Window[] getWindows()
Возвращает массив всех Window, как принадлежащих, так и без владельца, созданных этим приложением. Если вызвано из апплета, массив включает только Window, доступные этому апплету.

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

Возвращает:
массив всех Window, созданных приложением
С момента:
1.6
См. также:
  • Frame.getFrames()
  • getOwnerlessWindows()

getOwnerlessWindows

public static Window[] getOwnerlessWindows()
Возвращает массив всех Window, созданных этим приложением, у которых нет владельца. Они включают Frame и бесхозные Dialog и Window. Если вызвано из апплета, массив включает только Window, доступные этому апплету.

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

Возвращает:
массив всех бесхозных Window, созданных этим приложением
С момента:
1.6
См. также:
  • Frame.getFrames()
  • getWindows()

setModalExclusionType

public void setModalExclusionType(Dialog.ModalExclusionType exclusionType)
Устанавливает тип исключения модальности для этого окна. Если окно исключено по модальности, оно не блокируется некоторыми модальными диалогами. См. Dialog.ModalExclusionType для возможных типов исключения модальности.

Если заданный тип не поддерживается, используется NO_EXCLUDE.

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

Parameters:
exclusionType - тип исключения модальности для этого окна; значение null эквивалентно NO_EXCLUDE
Throws:
SecurityException - если поток вызова не имеет разрешения на установку свойства исключения модальности для окна с заданным exclusionType
Since:
1.6
See Also:
  • Dialog.ModalExclusionType
  • getModalExclusionType()
  • Toolkit.isModalExclusionTypeSupported(java.awt.Dialog.ModalExclusionType)

getModalExclusionType

public Dialog.ModalExclusionType getModalExclusionType()
Возвращает тип исключения модальности этого окна.
Returns:
тип исключения модальности этого окна
Since:
1.6
See Also:
  • Dialog.ModalExclusionType
  • setModalExclusionType(java.awt.Dialog.ModalExclusionType)

addWindowListener

public void addWindowListener(WindowListener l)
Добавляет указанного обработчика событий окна для получения событий окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий окна
See Also:
  • removeWindowListener(java.awt.event.WindowListener)
  • getWindowListeners()

addWindowStateListener

public void addWindowStateListener(WindowStateListener l)
Добавляет указанного обработчика событий состояния окна для получения событий окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий состояния окна
Since:
1.4
See Also:
  • removeWindowStateListener(java.awt.event.WindowStateListener)
  • getWindowStateListeners()

addWindowFocusListener

public void addWindowFocusListener(WindowFocusListener l)
Добавляет указанного обработчика событий фокуса окна для получения событий окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий фокуса окна
Since:
1.4
See Also:
  • removeWindowFocusListener(java.awt.event.WindowFocusListener)
  • getWindowFocusListeners()

removeWindowListener

public void removeWindowListener(WindowListener l)
Удаляет указанного обработчика событий окна, чтобы он больше не получал события окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий окна
See Also:
  • addWindowListener(java.awt.event.WindowListener)
  • getWindowListeners()

removeWindowStateListener

public void removeWindowStateListener(WindowStateListener l)
Удаляет указанного обработчика событий состояния окна, чтобы он больше не получал события окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий состояния окна
Since:
1.4
See Also:
  • addWindowStateListener(java.awt.event.WindowStateListener)
  • getWindowStateListeners()

removeWindowFocusListener

public void removeWindowFocusListener(WindowFocusListener l)
Удаляет указанного обработчика событий фокуса окна, чтобы он больше не получал события окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.

Обратитесь к Вопросы многопоточности AWT для получения подробностей о модели многопоточности AWT.

Parameters:
l - обработчик событий фокуса окна
Since:
1.4
See Also:
  • addWindowFocusListener(java.awt.event.WindowFocusListener)
  • getWindowFocusListeners()

getWindowListeners

public WindowListener[] getWindowListeners()
Возвращает массив всех обработчиков событий окна, зарегистрированных в этом окне.
Returns:
все обработчики событий этого окна или пустой массив, если обработчики событий окна не зарегистрированы в настоящее время
Since:
1.4
See Also:
  • addWindowListener(java.awt.event.WindowListener)
  • removeWindowListener(java.awt.event.WindowListener)

getWindowFocusListeners

public WindowFocusListener[] getWindowFocusListeners()
Возвращает массив всех обработчиков событий фокуса окна, зарегистрированных в этом окне.
Returns:
все обработчики событий фокуса этого окна или пустой массив, если обработчики событий фокуса окна не зарегистрированы в настоящее время
Since:
1.4
See Also:
  • addWindowFocusListener(java.awt.event.WindowFocusListener)
  • removeWindowFocusListener(java.awt.event.WindowFocusListener)

getWindowStateListeners

public WindowStateListener[] getWindowStateListeners()
Возвращает массив всех обработчиков событий состояния окна, зарегистрированных в этом окне.
Returns:
все обработчики событий состояния этого окна или пустой массив, если обработчики событий состояния окна не зарегистрированы в настоящее время
Since:
1.4
See Also:
  • addWindowStateListener(java.awt.event.WindowStateListener)
  • removeWindowStateListener(java.awt.event.WindowStateListener)

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)
Возвращает массив всех объектов, в настоящее время зарегистрированных в качестве FooListener для этого Window. FooListener регистрируются с помощью метода addFooListener.

Вы можете указать аргумент listenerType с помощью литерала класса, такого как FooListener.class. Например, вы можете запросить обработчики событий окна для Window w с помощью следующего кода:

WindowListener[] wls = (WindowListener[])(w.getListeners(WindowListener.class));
Если таких обработчиков нет, этот метод возвращает пустой массив.
Overrides:
getListeners в классе Container
Type Parameters:
T - тип обработчиков
Parameters:
listenerType - тип запрашиваемых обработчиков; этот параметр должен указать интерфейс, который наследуется от java.util.EventListener
Returns:
массив всех объектов, зарегистрированных в качестве FooListener для этого окна, или пустой массив, если такие обработчики не были добавлены
Throws:
ClassCastException - если listenerType не указывает класс или интерфейс, реализующий java.util.EventListener
NullPointerException - если listenerType равен null
Since:
1.3
See Also:
  • getWindowListeners()

processEvent

protected void processEvent(AWTEvent e)
Обрабатывает события в этом окне. Если событие является WindowEvent, вызывается метод processWindowEvent, в противном случае вызывается метод родительского класса processEvent.

Обратите внимание, что если параметр события является null, поведение не определено и может привести к исключению.

Overrides:
processEvent в классе Container
Параметры:
e - событие
См. также:
  • Component.processComponentEvent(java.awt.event.ComponentEvent)
  • Component.processFocusEvent(java.awt.event.FocusEvent)
  • Component.processKeyEvent(java.awt.event.KeyEvent)
  • Component.processMouseEvent(java.awt.event.MouseEvent)
  • Component.processMouseMotionEvent(java.awt.event.MouseEvent)
  • Component.processInputMethodEvent(java.awt.event.InputMethodEvent)
  • Component.processHierarchyEvent(java.awt.event.HierarchyEvent)
  • Component.processMouseWheelEvent(java.awt.event.MouseWheelEvent)

processWindowEvent

protected void processWindowEvent(WindowEvent e)
Обрабатывает события окон, происходящие в этом окне, рассылая их всем зарегистрированным объектам WindowListener. ПРИМЕЧАНИЕ: Этот метод не будет вызван, если события окон не включены для этого компонента; это происходит, когда происходит одно из следующих событий:
  • Объект WindowListener зарегистрирован через addWindowListener
  • События окон включены через enableEvents

Обратите внимание, что если параметр события является null, поведение не определено и может привести к исключению.

Параметры:
e - событие окна
См. также:
  • Component.enableEvents(long)

processWindowFocusEvent

protected void processWindowFocusEvent(WindowEvent e)
Обрабатывает события фокуса окна, происходящие в этом окне, рассылая их всем зарегистрированным объектам WindowFocusListener. ПРИМЕЧАНИЕ: этот метод не будет вызван, если события фокуса окна не включены для этого окна. Это происходит, когда происходит одно из следующих событий:
  • WindowFocusListener зарегистрирован через addWindowFocusListener
  • События фокуса окна включены через enableEvents

Обратите внимание, что если параметр события является null, поведение не определено и может привести к исключению.

Параметры:
e - событие фокуса окна
С тех пор:
1.4
См. также:
  • Component.enableEvents(long)

processWindowStateEvent

protected void processWindowStateEvent(WindowEvent e)
Обрабатывает события состояния окна, происходящие в этом окне, рассылая их всем зарегистрированным объектам WindowStateListener. ПРИМЕЧАНИЕ: этот метод не будет вызван, если события состояния окна не включены для этого окна. Это происходит, когда происходит одно из следующих событий:
  • WindowStateListener зарегистрирован через addWindowStateListener
  • События состояния окна включены через enableEvents

Обратите внимание, что если параметр события является null, поведение не определено и может привести к исключению.

Параметры:
e - событие состояния окна
С тех пор:
1.4
См. также:
  • Component.enableEvents(long)

setAlwaysOnTop

public final void setAlwaysOnTop(boolean alwaysOnTop) throws SecurityException
Устанавливает, должно ли это окно всегда быть сверху других окон. Если существует несколько окон, всегда находящихся сверху, их относительный порядок не определен и зависит от платформы.

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

Все окна, принадлежащие окну, всегда находящемуся сверху, наследуют этот статус и автоматически становятся окнами, всегда находящимися сверху. Если окно перестает быть окном, всегда находящимся сверху, окна, ему принадлежащие, больше не будут окнами, всегда находящимися сверху. Когда окно, всегда находящееся сверху, отправляется в toBack, его статус «всегда сверху» устанавливается в false.

При вызове этого метода для окна со значением true, если окно видимое и платформа поддерживает состояние «всегда сверху» для этого окна, окно сразу же перемещается вперед, «прилипая» к самому верхнему положению. Если окно в данный момент не видимо, этот метод устанавливает состояние «всегда сверху» в true, но не перемещает окно вперед. Позже, когда окно будет показано, оно будет окном «всегда сверху».

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

Примечание: некоторые платформы могут не поддерживать окна «всегда сверху». Чтобы определить, поддерживает ли текущая платформа окна «всегда сверху», используйте Toolkit.isAlwaysOnTopSupported() и isAlwaysOnTopSupported(). Если режим «всегда сверху» не поддерживается для этого окна или набор инструментов этого окна не поддерживает окна «всегда сверху», вызов этого метода не имеет эффекта.

Если установлен SecurityManager, вызывающая нить должна иметь разрешение AWTPermission «setWindowAlwaysOnTop», чтобы установить значение этого свойства. Если это разрешение не предоставлено, этот метод выбросит SecurityException, и текущее значение свойства останется неизменным.

Параметры:
alwaysOnTop - true, если окно должно всегда быть сверху других окон
Исключения:
SecurityException - если вызывающая нить не имеет разрешения установить значение свойства «всегда сверху»
С тех пор:
1.5
См. также:
  • isAlwaysOnTop()
  • toFront()
  • toBack()
  • AWTPermission
  • isAlwaysOnTopSupported()
  • getToolkit()
  • Toolkit.isAlwaysOnTopSupported()

isAlwaysOnTopSupported

public boolean isAlwaysOnTopSupported()
Возвращает, поддерживается ли режим «всегда сверху» для этого окна. Некоторые платформы могут не поддерживать окна «всегда сверху», некоторые могут поддерживать только некоторые типы окон верхнего уровня; например, платформа может не поддерживать модальные диалоговые окна «всегда сверху».
Возвращает:
true, если режим «всегда сверху» поддерживается для этого окна и набор инструментов этого окна поддерживает окна «всегда сверху», false в противном случае
С тех пор:
1.6
См. также:
  • setAlwaysOnTop(boolean)
  • getToolkit()
  • Toolkit.isAlwaysOnTopSupported()

isAlwaysOnTop

public final boolean isAlwaysOnTop()
Возвращает, является ли это окно окном, всегда находящимся сверху.
Возвращает:
true, если окно находится в состоянии «всегда сверху», false в противном случае
С тех пор:
1.5
См. также:
  • setAlwaysOnTop(boolean)

getFocusOwner

public Component getFocusOwner()
Возвращает дочерний компонент этого окна, имеющий фокус, если это окно имеет фокус; возвращает null в противном случае.
Возвращает:
дочерний компонент с фокусом или null, если у этого окна нет фокуса
См. также:
  • getMostRecentFocusOwner()
  • isFocused()

getMostRecentFocusOwner

public Component getMostRecentFocusOwner()
Возвращает дочерний компонент этого окна, который получит фокус, когда это окно получит фокус. Если это окно в данный момент имеет фокус, этот метод возвращает тот же компонент, что и getFocusOwner(). Если у этого окна нет фокуса, то возвращается дочерний компонент, который последний запросил фокус. Если ни один дочерний компонент никогда не запрашивал фокус, и это фокусируемое окно, то возвращается начальный фокусируемый компонент этого окна. Если ни один дочерний компонент никогда не запрашивал фокус, и это не фокусируемое окно, возвращается null.
Возвращает:
дочерний компонент, который получит фокус, когда это окно получит фокус
С тех пор:
1.4
См. также:
  • getFocusOwner()
  • isFocused()
  • isFocusableWindow()

isActive

public boolean isActive()
Возвращает, активно ли это окно. Только Frame или Dialog могут быть активными. Система окон может обозначать активное окно или его дочерние элементы специальными элементами оформления, такими как выделенная строка заголовка. Активное окно всегда либо является фокусированным окном, либо первым Frame или Dialog, являющимся владельцем фокусированного окна.
Возвращает:
является ли это окно активным.
С тех пор:
1.4
См. также:
  • isFocused()

isFocused

public boolean isFocused()
Возвращает, является ли это окно фокусированным. Если существует владелец фокуса, фокусированным окном является окно, которое содержит или является этим владельцем фокуса. Если владельца фокуса нет, то ни одно окно не фокусировано.

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

Возвращает:
является ли это окно фокусированным.
Since:
1.4
См. также:
  • isActive()

getFocusTraversalKeys

public Set<AWTKeyStroke> getFocusTraversalKeys(int id)
Возвращает клавишу перехода фокуса для этого окна. (См. setFocusTraversalKeys для полного описания каждой клавиши.)

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

Overrides:
getFocusTraversalKeys в классе Container
Параметры:
id - одна из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS
Возвращает:
AWTKeyStroke для указанной клавиши
Исключения:
IllegalArgumentException - если id не равен одной из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS, KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS или KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS
Since:
1.4
См. также:
  • Container.setFocusTraversalKeys(int, java.util.Set<? extends java.awt.AWTKeyStroke>)
  • KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS
  • KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS
  • KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS
  • KeyboardFocusManager.DOWN_CYCLE_TRAVERSAL_KEYS

setFocusCycleRoot

public final void setFocusCycleRoot(boolean focusCycleRoot)
Ничего не делает, потому что окна всегда должны быть корнями цикла перехода фокуса. Переданное значение игнорируется.
Overrides:
setFocusCycleRoot в классе Container
Параметры:
focusCycleRoot - это значение игнорируется
Since:
1.4
См. также:
  • isFocusCycleRoot()
  • Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
  • Container.getFocusTraversalPolicy()

isFocusCycleRoot

public final boolean isFocusCycleRoot()
Всегда возвращает true, потому что все окна должны быть корнями цикла перехода фокуса.
Overrides:
isFocusCycleRoot в классе Container
Возвращает:
true
Since:
1.4
См. также:
  • setFocusCycleRoot(boolean)
  • Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy)
  • Container.getFocusTraversalPolicy()

getFocusCycleRootAncestor

public final Container getFocusCycleRootAncestor()
Всегда возвращает null, потому что окна не имеют предков; они представляют собой вершину иерархии компонентов.
Overrides:
getFocusCycleRootAncestor в классе Component
Возвращает:
null
Since:
1.4
См. также:
  • Container.isFocusCycleRoot()

isFocusableWindow

public final boolean isFocusableWindow()
Возвращает, может ли это окно стать фокусированным окном, то есть, может ли это окно или любой его подкомпонент стать владельцем фокуса. Для того, чтобы фрейм или диалоговое окно были фокусируемыми, их состояние фокусируемого окна должно быть установлено в true. Для того, чтобы окно, которое не является фреймом или диалоговым окном, было фокусируемым, его состояние фокусируемого окна должно быть установлено в true, его ближайшее владеющее фрейм или диалоговое окно должно быть отображено на экране, и оно должно содержать по крайней мере один компонент в цикле перехода фокуса. Если какое-либо из этих условий не выполняется, то ни это окно, ни какой-либо из его подкомпонентов не может стать владельцем фокуса.
Возвращает:
true, если это окно может быть фокусированным окном; false в противном случае
Since:
1.4
См. также:
  • getFocusableWindowState()
  • setFocusableWindowState(boolean)
  • isShowing()
  • Component.isFocusable()

getFocusableWindowState

public boolean getFocusableWindowState()
Возвращает, может ли это окно стать фокусированным окном, если оно соответствует другим требованиям, описанным в isFocusableWindow. Если этот метод возвращает false, то isFocusableWindow также вернет false. Если этот метод возвращает true, то isFocusableWindow может вернуть true или false, в зависимости от других требований, которые должны быть выполнены для того, чтобы окно было фокусируемым.

По умолчанию все окна имеют состояние фокусируемого окна true.

Возвращает:
может ли это окно быть фокусированным окном
Since:
1.4
См. также:
  • isFocusableWindow()
  • setFocusableWindowState(boolean)
  • isShowing()
  • Component.setFocusable(boolean)

setFocusableWindowState

public void setFocusableWindowState(boolean focusableWindowState)
Устанавливает, может ли это окно стать фокусированным окном, если оно соответствует другим требованиям, описанным в isFocusableWindow. Если состояние фокусируемого окна этого окна установлено в false, то isFocusableWindow вернёт false. Если состояние фокусируемого окна этого окна установлено в true, то isFocusableWindow может вернуть true или false, в зависимости от других требований, которые должны быть выполнены для того, чтобы окно было фокусируемым.

Установка состояния фокусируемости окна в false — стандартный механизм, с помощью которого приложение сообщает AWT о том, что окно будет использоваться в качестве плавающего подменю или панели инструментов и, следовательно, должно быть нефокусируемым. Установка состояния фокусируемости для видимого Window может иметь отложенный эффект на некоторых платформах — фактическое изменение может произойти только тогда, когда Window снова скроется и затем станет видимым. Для обеспечения согласованного поведения на всех платформах установите состояние фокусируемости Window, когда Window невидимо, а затем отобразите его.

Параметры:
focusableWindowState - может ли это окно быть фокусированным окном
Since:
1.4
См. также:
  • isFocusableWindow()
  • getFocusableWindowState()
  • isShowing()
  • Component.setFocusable(boolean)

setAutoRequestFocus

public void setAutoRequestFocus(boolean autoRequestFocus)
Устанавливает, должно ли это окно получать фокус при последующем отображении (с вызовом setVisible(true)) или перемещении на передний план (с вызовом toFront()).

Обратите внимание, что setVisible(true) может быть вызван косвенно (например, при отображении владельца окна, которое приводит к отображению окна). toFront() также может быть вызван косвенно (например, когда setVisible(true) вызывается для уже видимого окна). Во всех таких случаях это свойство также действует.

Значение свойства не наследуется дочерними окнами.

Параметры:
autoRequestFocus - должно ли это окно получать фокус при последующем отображении или перемещении на передний план
Since:
1.7
См. также:
  • isAutoRequestFocus()
  • isFocusableWindow()
  • setVisible(boolean)
  • toFront()

isAutoRequestFocus

public boolean isAutoRequestFocus()
Возвращает, должно ли это окно получать фокус при последующем отображении (с вызовом setVisible(true)) или перемещении на передний план (с вызовом toFront()).

По умолчанию окно имеет значение autoRequestFocus true.

Возвращает:
значение autoRequestFocus
Since:
1.7
См. также:
  • setAutoRequestFocus(boolean)

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Добавляет обработчик PropertyChangeListener в список слушателей. Слушатель регистрируется для всех связанных свойств этого класса, включая следующие:
  • шрифт этого окна ("font")
  • цвет фона этого окна ("background")
  • цвет переднего плана этого окна ("foreground")
  • возможность получения фокуса этим окном ("focusable")
  • состояние включения клавиш перехода фокуса для этого окна ("focusTraversalKeysEnabled")
  • набор клавиш перехода фокуса вперёд этого окна ("forwardFocusTraversalKeys")
  • набор клавиш перехода фокуса назад этого окна ("backwardFocusTraversalKeys")
  • набор клавиш перехода фокуса вверх этого окна ("upCycleFocusTraversalKeys")
  • набор клавиш перехода фокуса вниз этого окна ("downCycleFocusTraversalKeys")
  • политика перехода фокуса этого окна ("focusTraversalPolicy")
  • состояние окна, допускающего фокус ("focusableWindowState")
  • состояние окна всегда поверх ("alwaysOnTop")
Обратите внимание, что если это окно наследует связанное свойство, то событие не будет сгенерировано в ответ на изменение унаследованного свойства.

Если listener равен null, исключение не выбрасывается, и никакие действия не выполняются.

Overrides:
addPropertyChangeListener в классе Container
Parameters:
listener - добавляемый обработчик PropertyChangeListener
See Also:
  • Component.removePropertyChangeListener(java.beans.PropertyChangeListener)
  • addPropertyChangeListener(java.lang.String,java.beans.PropertyChangeListener)

addPropertyChangeListener

public void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
Добавляет обработчик PropertyChangeListener в список слушателей для определённого свойства. Указанное свойство может быть пользовательским или одним из следующих:
  • шрифт этого окна ("font")
  • цвет фона этого окна ("background")
  • цвет переднего плана этого окна ("foreground")
  • возможность получения фокуса этим окном ("focusable")
  • состояние включения клавиш перехода фокуса для этого окна ("focusTraversalKeysEnabled")
  • набор клавиш перехода фокуса вперёд этого окна ("forwardFocusTraversalKeys")
  • набор клавиш перехода фокуса назад этого окна ("backwardFocusTraversalKeys")
  • набор клавиш перехода фокуса вверх этого окна ("upCycleFocusTraversalKeys")
  • набор клавиш перехода фокуса вниз этого окна ("downCycleFocusTraversalKeys")
  • политика перехода фокуса этого окна ("focusTraversalPolicy")
  • состояние окна, допускающего фокус ("focusableWindowState")
  • состояние окна всегда поверх ("alwaysOnTop")
Обратите внимание, что если это окно наследует связанное свойство, то событие не будет сгенерировано в ответ на изменение унаследованного свойства.

Если listener равен null, исключение не выбрасывается, и никакие действия не выполняются.

Overrides:
addPropertyChangeListener в классе Container
Parameters:
propertyName - одно из имён свойств, перечисленных выше
listener - добавляемый обработчик PropertyChangeListener
See Also:
  • addPropertyChangeListener(java.beans.PropertyChangeListener)
  • Component.removePropertyChangeListener(java.beans.PropertyChangeListener)

isValidateRoot

public boolean isValidateRoot()
Указывает, является ли этот контейнер корнем проверки.

Window объекты являются корнями проверки, и, следовательно, они переопределяют этот метод, чтобы вернуть true.

Overrides:
isValidateRoot в классе Container
Returns:
true
Since:
1.7
See Also:
  • Container.isValidateRoot()

postEvent

@Deprecated public boolean postEvent(Event e)
Deprecated.
Начиная с JDK версии 1.1, заменено на dispatchEvent(AWTEvent).
Описание скопировано из интерфейса: MenuContainer
Отправляет событие слушателям.
Specified by:
postEvent в интерфейсе MenuContainer
Overrides:
postEvent в классе Component
Parameters:
e - событие для обработки
Returns:
результат отправки события

isShowing

public boolean isShowing()
Проверяет, отображается ли это окно на экране.
Overrides:
isShowing в классе Component
Returns:
true, если компонент отображается, false в противном случае
See Also:
  • Component.setVisible(boolean)

applyResourceBundle

@Deprecated public void applyResourceBundle(ResourceBundle rb)
Deprecated.
Начиная с J2SE 1.4, заменено на Component.applyComponentOrientation.
Parameters:
rb - набор ресурсов

applyResourceBundle

@Deprecated public void applyResourceBundle(String rbName)
Deprecated.
Начиная с J2SE 1.4, заменено на Component.applyComponentOrientation.
Parameters:
rbName - имя набора ресурсов

setType

public void setType(Window.Type type)
Устанавливает тип окна. Этот метод может быть вызван только когда окно не отображается.
Parameters:
type - тип окна
Throws:
IllegalComponentStateException - если окно отображается.
IllegalArgumentException - если тип является null
Since:
1.7
See Also:
  • Component.isDisplayable()
  • getType()

getType

public Window.Type getType()
Возвращает тип окна.
Returns:
тип окна
Since:
1.7
See Also:
  • setType(java.awt.Window.Type)

getAccessibleContext

public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим окном. Для окон AccessibleContext принимает форму AccessibleAWTWindow. Новый экземпляр AccessibleAWTWindow создаётся при необходимости.
Specified by:
getAccessibleContext в интерфейсе Accessible
Overrides:
getAccessibleContext в классе Component
Returns:
AccessibleAWTWindow, служащий AccessibleContext для этого окна
Since:
1.3

setLocationRelativeTo

public void setLocationRelativeTo(Component c)
Устанавливает расположение окна относительно указанного компонента в соответствии со следующими сценариями.

Целевой экран, упомянутый ниже, — это экран, на который должно быть помещено окно после вызова метода setLocationRelativeTo.

  • Если компонент является null, или GraphicsConfiguration, связанный с этим компонентом, является null, окно помещается в центр экрана. Центральную точку можно получить с помощью метода GraphicsEnvironment.getCenterPoint.
  • Если компонент не null, но он не отображается, окно помещается в центр целевого экрана, определённого GraphicsConfiguration, связанным с этим компонентом.
  • Если компонент не null и отображается на экране, то окно размещается так, что центр окна совпадает с центром компонента.

Если конфигурация экранов не позволяет переместить окно с одного экрана на другой, то окно размещается только в позиции, определённой в соответствии с вышеперечисленными условиями, и его GraphicsConfiguration не изменяется.

Примечание: Если нижний край окна выходит за пределы экрана, то окно помещается на сторону Component, которая ближе к центру экрана. Таким образом, если компонент находится в правой части экрана, окно помещается слева, и наоборот.

Если после расчёта расположения окна верхний, левый или правый край окна выходит за пределы экрана, то окно размещается так, что верхний, левый или правый край окна совпадает с соответствующим краем экрана. Если оба левых и правых края окна выходят за пределы экрана, окно помещается слева от экрана. Аналогичное размещение произойдёт, если оба верхний и нижний края выходят за пределы экрана. В этом случае окно размещается в верхней части экрана.

Метод изменяет данные, относящиеся к геометрии. Поэтому система окон может игнорировать такие запросы или изменять запрошенные данные, так что Window объект размещается и масштабируется соответствующим образом к настройкам рабочего стола.

Parameters:
c - компонент, относительно которого определяется расположение окна
Since:
1.4
See Also:
  • GraphicsEnvironment.getCenterPoint()

createBufferStrategy

public void createBufferStrategy(int numBuffers)
Создаёт новую стратегию многобуферизации для этого компонента. Многобуферизация полезна для повышения производительности отрисовки. Данный метод пытается создать лучшую доступную стратегию с заданным числом буферов. Он всегда создаст стратегию с этим количеством буферов. Сначала пытается создать стратегию с переключением страниц, затем - стратегию с блинкингом, используя ускоренные буферы. Наконец, используется неускоренная стратегия блинкинга.

Каждый раз при вызове этого метода существующая стратегия буферизации для этого компонента отбрасывается.

Parameters:
numBuffers - количество буферов для создания
Throws:
IllegalArgumentException - если numBuffers меньше 1.
IllegalStateException - если компонент недоступен для отображения
Since:
1.4
See Also:
  • Component.isDisplayable()
  • getBufferStrategy()

createBufferStrategy

public void createBufferStrategy(int numBuffers, BufferCapabilities caps) throws AWTException
Создаёт новую стратегию многобуферизации для этого компонента с необходимыми возможностями буфера. Это полезно, например, если требуется только ускоренная память или переключение страниц (как указано в возможностях буфера).

Каждый раз при вызове этого метода существующая стратегия буферизации для этого компонента отбрасывается.

Parameters:
numBuffers - количество буферов для создания, включая передний буфер
caps - необходимые возможности для создания стратегии буферизации; не может быть null
Throws:
AWTException - если предоставленные возможности не могут быть поддержаны; это может произойти, например, если нет достаточного количества ускоренной памяти или если указано переключение страниц, но оно невозможно.
IllegalArgumentException - если numBuffers меньше 1 или если caps null
Since:
1.4
See Also:
  • getBufferStrategy()

getBufferStrategy

public BufferStrategy getBufferStrategy()
Возвращает стратегию буферизации, используемую этим компонентом. Этот метод вернёт null, если стратегия буферизации ещё не была создана или была удалена.
Returns:
стратегия буферизации, используемая этим компонентом
Since:
1.4
See Also:
  • createBufferStrategy(int)

setLocationByPlatform

public void setLocationByPlatform(boolean locationByPlatform)
Устанавливает, должен ли этот объект окна появляться по умолчанию для системного окна или по текущим координатам (возвращаемым методом getLocation), при следующем отображении. Это поведение напоминает отображение системного окна без программной установки его местоположения. Большинство систем окон распологают окна по каскаду, если их местоположение не задано явно. Фактическое местоположение определяется после отображения окна на экране.

Это поведение можно также включить, установив системную переменную "java.awt.Window.locationByPlatform" в "true", хотя вызовы этого метода имеют приоритет.

Вызовы методов setVisible, setLocation и setBounds после вызова setLocationByPlatform очищают эту собственность окна.

Например, после выполнения следующего кода:

 setLocationByPlatform(true);
 setVisible(true);
 boolean flag = isLocationByPlatform();
 
Окно будет отображено по умолчанию для платформы, и flag будет false.

В следующем примере:

 setLocationByPlatform(true);
 setLocation(10, 10);
 boolean flag = isLocationByPlatform();
 setVisible(true);
 
Окно будет отображено по координатам (10, 10), а flag будет false.
Parameters:
locationByPlatform - true если это окно должно появиться по умолчанию, false если по текущим координатам
Throws:
IllegalComponentStateException - если окно отображается на экране, а locationByPlatform true.
Since:
1.5
See Also:
  • setLocation(int, int)
  • isShowing()
  • setVisible(boolean)
  • isLocationByPlatform()
  • System.getProperty(String)

isLocationByPlatform

public boolean isLocationByPlatform()
Возвращает true, если это окно будет отображено по умолчанию для системного окна в следующий раз, когда это окно будет отображено. Этот метод всегда возвращает false, если окно уже отображается на экране.
Returns:
должно ли окно отображаться по умолчанию
Since:
1.5
See Also:
  • setLocationByPlatform(boolean)
  • isShowing()

setBounds

public void setBounds(int x, int y, int width, int height)
Перемещает и изменяет размер этого компонента. Новое местоположение верхнего левого угла задаётся координатами x и y, а новый размер задаётся значениями width и height.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Значения width или height автоматически увеличиваются, если любое из них меньше минимального размера, как указано в предыдущем вызове setMinimumSize.

Метод изменяет данные, связанные с геометрией. Поэтому системное окно может игнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window был размещён и размером, соответствующим настройкам рабочего стола.

Overrides:
setBounds in class Component
Parameters:
x - новая координата x этого компонента
y - новая координата y этого компонента
width - новый width этого компонента
height - новый height этого компонента
Since:
1.6
See Also:
  • Component.getBounds()
  • setLocation(int, int)
  • setLocation(Point)
  • setSize(int, int)
  • setSize(Dimension)
  • setMinimumSize(java.awt.Dimension)
  • setLocationByPlatform(boolean)
  • isLocationByPlatform()

setBounds

public void setBounds(Rectangle r)
Перемещает и изменяет размер этого компонента в соответствии с новым прямоугольником r. Новое местоположение компонента задаётся значениями r.x и r.y, а новый размер задаётся значениями r.width и r.height.

Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонента.

Значения r.width или r.height будут автоматически увеличены, если любое из них меньше минимального размера, как указано в предыдущем вызове setMinimumSize.

Метод изменяет данные, связанные с геометрией. Поэтому системное окно может игнорировать такие запросы или изменить запрошенные данные таким образом, чтобы объект Window был размещён и размером, соответствующим настройкам рабочего стола.

Overrides:
setBounds in class Component
Parameters:
r - новый прямоугольник для этого компонента
Since:
1.6
See Also:
  • Component.getBounds()
  • setLocation(int, int)
  • setLocation(Point)
  • setSize(int, int)
  • setSize(Dimension)
  • setMinimumSize(java.awt.Dimension)
  • setLocationByPlatform(boolean)
  • isLocationByPlatform()

getOpacity

public float getOpacity()
Возвращает непрозрачность окна.
Returns:
непрозрачность окна
Since:
1.7
See Also:
  • setOpacity(float)
  • GraphicsDevice.WindowTranslucency

setOpacity

public void setOpacity(float opacity)
Устанавливает непрозрачность окна.

Значение непрозрачности находится в диапазоне [0..1]. Обратите внимание, что установка уровня непрозрачности 0 может или не может отключить обработку событий мыши в этом окне. Это зависит от платформы.

Для установки значения непрозрачности меньше чем 1.0f должны быть выполнены следующие условия:

  • Прозрачность TRANSLUCENT должна поддерживаться базовой системой
  • Окно должно быть без декораций (см. Frame.setUndecorated(boolean) и Dialog.setUndecorated(boolean))
  • Окно не должно быть в полноэкранном режиме (см. GraphicsDevice.setFullScreenWindow(Window))

Если запрошенное значение непрозрачности меньше чем 1.0f, и ни одно из вышеперечисленных условий не выполнено, непрозрачность окна не изменится, и будет выброшено исключение IllegalComponentStateException.

Уровни прозрачности отдельных пикселей также могут быть изменены альфа-компонентом их цвета (см. setBackground(Color)) и текущей формой этого окна (см. setShape(Shape)).

Parameters:
opacity - уровень непрозрачности, который нужно установить для окна
Throws:
IllegalArgumentException - если непрозрачность выходит за пределы диапазона [0..1]
IllegalComponentStateException - если окно декорировано, а непрозрачность меньше чем 1.0f
IllegalComponentStateException - если окно в полноэкранном режиме, а непрозрачность меньше чем 1.0f
UnsupportedOperationException - если прозрачность GraphicsDevice.WindowTranslucency#TRANSLUCENT TRANSLUCENT не поддерживается, а непрозрачность меньше чем 1.0f
Since:
1.7
See Also:
  • getOpacity()
  • setBackground(Color)
  • setShape(Shape)
  • Frame.isUndecorated()
  • Dialog.isUndecorated()
  • GraphicsDevice.WindowTranslucency
  • GraphicsDevice.isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)

getShape

public Shape getShape()
Возвращает форму окна. Значение, возвращаемое этим методом, может отличаться от ранее заданного с помощью setShape(shape), но гарантирует, что оно представляет ту же форму.
Returns:
форма окна или null, если для окна не указана форма
Since:
1.7
See Also:
  • setShape(Shape)
  • GraphicsDevice.WindowTranslucency

setShape

public void setShape(Shape shape)
Устанавливает форму окна.

Установка формы обрезает некоторые части окна. Видимыми и кликабельными остаются только части, принадлежащие заданной Shape. Если аргумент shape равен null, этот метод восстанавливает форму по умолчанию, делая окно прямоугольным на большинстве платформ.

Для установки ненулевой формы должны быть выполнены следующие условия:

  • Прозрачность PERPIXEL_TRANSPARENT должна поддерживаться базовой системой
  • Окно должно быть без декораций (см. Frame.setUndecorated(boolean) и Dialog.setUndecorated(boolean))
  • Окно не должно быть в полноэкранном режиме (см. GraphicsDevice.setFullScreenWindow(Window))

Если заданная форма не null, и ни одно из вышеперечисленных условий не выполнено, форма этого окна не изменится, и будет выброшено исключение UnsupportedOperationException или IllegalComponentStateException.

Уровни прозрачности отдельных пикселей также могут быть изменены альфа-компонентом их цвета (см. setBackground(Color)) и значением непрозрачности (см. setOpacity(float)). Дополнительная информация содержится в GraphicsDevice.WindowTranslucency.

Parameters:
shape - форма, которую нужно установить для окна
Throws:
IllegalComponentStateException - если форма не null и окно декорировано
IllegalComponentStateException - если форма не null и окно в полноэкранном режиме
UnsupportedOperationException - если форма не null и прозрачность PERPIXEL_TRANSPARENT не поддерживается
Since:
1.7
See Also:
  • getShape()
  • setBackground(Color)
  • setOpacity(float)
  • Frame.isUndecorated()
  • Dialog.isUndecorated()
  • GraphicsDevice.WindowTranslucency
  • GraphicsDevice.isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)

getBackground

public Color getBackground()
Возвращает цвет фона этого окна.

Обратите внимание, что альфа-компонента возвращаемого цвета указывает, находится ли окно в непрозрачном (прозрачном на уровне пикселей) режиме.

Overrides:
getBackground in class Component
Returns:
цвет фона компонента
See Also:
  • setBackground(Color)
  • isOpaque()
  • GraphicsDevice.WindowTranslucency

setBackground

public void setBackground(Color bgColor)
Устанавливает цвет фона этого окна.

Если система окон поддерживает прозрачность PERPIXEL_TRANSLUCENT, альфа-компонент заданного цвета фона может влиять на режим работы этого окна: он указывает, должно ли это окно быть непрозрачным (альфа равна 1.0f) или полупрозрачным с пиксельной прозрачностью (альфа меньше 1.0f). Если заданный цвет фона является null, окно считается полностью непрозрачным.

Для включения режима пиксельной прозрачности для этого окна должны выполняться следующие условия:

  • Прозрачность PERPIXEL_TRANSLUCENT должна поддерживаться графическим устройством, на котором расположено это окно
  • Окно должно быть без декораций (см. Frame.setUndecorated(boolean) и Dialog.setUndecorated(boolean))
  • Окно не должно быть в полноэкранном режиме (см. GraphicsDevice.setFullScreenWindow(Window))

Если альфа-компонент запрошенного цвета фона меньше 1.0f, и ни одно из вышеперечисленных условий не выполняется, цвет фона этого окна не изменится, альфа-компонент заданного цвета фона не повлияет на режим работы окна, и будет выброшено либо UnsupportedOperationException, либо IllegalComponentStateException.

Когда окно полупрозрачно с пиксельной прозрачностью, подсистема рисования учитывает значение альфа-канала каждого отдельного пикселя. Если пиксель окрашивается с альфа-каналом, равным нулю, он становится визуально прозрачным. Если альфа пикселя равна 1.0f, пиксель полностью непрозрачен. Промежуточные значения альфа-канала делают пиксель полупрозрачным. В этом режиме фон окна окрашивается со значением альфа-канала заданного цвета фона. Если значение альфа-канала аргумента этого метода равно 0, фон вообще не отрисовывается.

Фактический уровень прозрачности данного пикселя также зависит от непрозрачности окна (см. setOpacity(float)), а также от текущей формы этого окна (см. setShape(Shape)).

Обратите внимание, что покраска пикселя с альфа-каналом 0 может или не может отключить обработку событий мыши на этом пикселе. Это поведение зависит от платформы. Чтобы убедиться, что события мыши не отправляются на определенный пиксель, пиксель необходимо исключить из формы окна.

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

Overrides:
setBackground в классе Component
Parameters:
bgColor - цвет, который должен стать цветом фона этого окна.
Throws:
IllegalComponentStateException - если значение альфа-канала заданного цвета фона меньше 1.0f, и окно имеет декорации
IllegalComponentStateException - если значение альфа-канала заданного цвета фона меньше 1.0f, и окно находится в полноэкранном режиме
UnsupportedOperationException - если значение альфа-канала заданного цвета фона меньше 1.0f, и прозрачность PERPIXEL_TRANSLUCENT не поддерживается
See Also:
  • getBackground()
  • isOpaque()
  • setOpacity(float)
  • setShape(Shape)
  • Frame.isUndecorated()
  • Dialog.isUndecorated()
  • GraphicsDevice.WindowTranslucency
  • GraphicsDevice.isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
  • GraphicsConfiguration.isTranslucencyCapable()

isOpaque

public boolean isOpaque()
Указывает, является ли окно в настоящее время непрозрачным.

Метод возвращает false, если цвет фона окна не null и альфа-компонент цвета меньше 1.0f. В противном случае метод возвращает true.

Overrides:
isOpaque в классе Component
Returns:
true, если окно непрозрачно, false в противном случае
Since:
1.7
See Also:
  • getBackground()
  • setBackground(Color)

paint

public void paint(Graphics g)
Рисует контейнер. Это пересылает рисование всем легким компонентам, которые являются дочерними элементами этого контейнера. Если этот метод переопределен, необходимо вызвать super.paint(g), чтобы легкие компоненты были корректно отрисованы. Если дочерний компонент полностью обрезан текущими настройками обрезки в g, paint() не будет передан этому дочернему элементу.
Overrides:
paint в классе Container
Parameters:
g - указанное окно Graphics
Since:
1.7
See Also:
  • Component.update(Graphics)

© 1993, 2021, 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/17/docs/api/java.desktop/java/awt/Window.html

Spec-Zone.ru

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