Класс 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.
Окно должно иметь либо фрейм, диалоговое окно, или другое окно, определённое как его владелец, при создании.
В многоэкранной среде вы можете создать Window на другом экране, создав Window с помощью Window(Window, GraphicsConfiguration). Объект GraphicsConfiguration является одним из объектов GraphicsConfiguration целевого устройства экрана.
В виртуальной многоэкранной среде, где область рабочего стола может охватывать несколько физических экранов, границы всех конфигураций относительны к системе координат виртуального устройства. Начало виртуальной системы координат находится в верхнем левом углу основного физического экрана. В зависимости от расположения основного экрана на виртуальном устройстве, возможны отрицательные координаты, как показано на рисунке ниже.
В такой среде, при вызове 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 соответствовал настройкам рабочего стола.
Из-за асинхронного характера обработки событий, возвращаемые значения getBounds, getLocation, getLocationOnScreen, и getSize могут не отражать фактическую геометрию окна на экране, пока не будет обработано последнее из запросов. Во время обработки последующих запросов эти значения могут измениться в соответствии с тем, как система управления окнами удовлетворяет запросы.
Приложение может произвольно установить размер и положение невидимого Window, но система управления окнами может впоследствии изменить его размер и/или положение, когда Window станет видимым. Будет сгенерировано одно или несколько событий ComponentEvent для указания новой геометрии.
Окна могут генерировать следующие события WindowEvents: WindowOpened, WindowClosed, WindowGainedFocus, WindowLostFocus.
- С момента:
- JDK1.0
- См. также:
-
WindowEvent,addWindowListener(java.awt.event.WindowListener),BorderLayout, Serialized Form
Вложенные классы
| Модификатор и тип | Класс и описание |
|---|---|
protected class |
Window.AccessibleAWTWindow Этот класс реализует поддержку доступности для класса |
static class |
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) Создаёт новое, изначально невидимое окно с указанным |
Window(Window owner) Создаёт новое, изначально невидимое окно с указанным |
Window(Window owner,
GraphicsConfiguration gc) Создаёт новое, изначально невидимое окно с указанным владельцем |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
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(ResourceBundle rb) Устарело. Начиная с J2SE 1.4, заменено на |
void |
applyResourceBundle(String rbName) Устарело. Начиная с J2SE 1.4, заменено на |
void |
createBufferStrategy(int numBuffers) Создаёт новую стратегию для многобуферизации в этом компоненте. |
void |
createBufferStrategy(int numBuffers,
BufferCapabilities caps) Создаёт новую стратегию для многобуферизации в этом компоненте с требуемыми возможностями буферизации. |
void |
dispose() Освобождает все нативные ресурсы экрана, используемые этим |
AccessibleContext |
getAccessibleContext() Получает AccessibleContext, связанный с этим окном. |
Color |
getBackground() Получает цвет фона этого окна. |
BufferStrategy |
getBufferStrategy() Возвращает |
boolean |
getFocusableWindowState() Возвращает, может ли это окно стать фокусированным окном, если оно удовлетворяет другим требованиям, изложенным в |
Container |
getFocusCycleRootAncestor() Всегда возвращает |
Component |
getFocusOwner() Возвращает дочерний компонент этого окна, у которого есть фокус, если это окно фокусировано; в противном случае возвращает null. |
Set<AWTKeyStroke> |
getFocusTraversalKeys(int id) Получает клавишу перемещения фокуса для этого окна. |
List<Image> |
getIconImages() Возвращает последовательность изображений, которые будут отображаться в качестве значка для этого окна. |
InputContext |
getInputContext() Получает контекст ввода для этого окна. |
<T extends EventListener> |
getListeners(Class<T> listenerType) Возвращает массив всех объектов, зарегистрированных в качестве |
Locale |
getLocale() Получает объект |
Dialog.ModalExclusionType |
getModalExclusionType() Возвращает тип исключения модальности для этого окна. |
Component |
getMostRecentFocusOwner() Возвращает дочерний компонент этого окна, который получит фокус, когда это окно фокусировано. |
float |
getOpacity() Возвращает непрозрачность окна. |
Window[] |
getOwnedWindows() Возвращает массив, содержащий все окна, которыми в настоящее время владеет это окно. |
Window |
getOwner() Возвращает владельца этого окна. |
static Window[] |
getOwnerlessWindows() Возвращает массив всех |
Shape |
getShape() Возвращает форму окна. |
Toolkit |
getToolkit() Возвращает набор инструментов этой рамки. |
Window.Type |
getType() Возвращает тип окна. |
String |
getWarningString() Получает строку предупреждения, отображаемую с этим окном. |
WindowFocusListener[] |
getWindowFocusListeners() Возвращает массив всех зарегистрированных слушателей событий фокуса окна на этом окне. |
WindowListener[] |
getWindowListeners() Возвращает массив всех зарегистрированных слушателей событий окна на этом окне. |
static Window[] |
getWindows() Возвращает массив всех |
WindowStateListener[] |
getWindowStateListeners() Возвращает массив всех зарегистрированных слушателей событий состояния окна на этом окне. |
void |
hide() Устарело. Начиная с JDK версии 1.5, заменено на |
boolean |
isActive() Возвращает, активно ли это окно. |
boolean |
isAlwaysOnTop() Возвращает, является ли это окно окном всегда сверху. |
boolean |
isAlwaysOnTopSupported() Возвращает, поддерживается ли режим всегда сверху для этого окна. |
boolean |
isAutoRequestFocus() Возвращает, должно ли это окно получить фокус после последующего отображения (с вызовом |
boolean |
isFocusableWindow() Возвращает, может ли это окно получить фокус, то есть, может ли это окно или любой из его подкомпонентов стать владельцем фокуса. |
boolean |
isFocusCycleRoot() Всегда возвращает |
boolean |
isFocused() Возвращает, имеет ли это окно фокус. |
boolean |
isLocationByPlatform() Возвращает |
boolean |
isOpaque() Указывает, является ли окно в настоящее время непрозрачным. |
boolean |
isShowing() Проверяет, отображается ли это окно на экране. |
boolean |
isValidateRoot() Указывает, является ли этот контейнер корнем валидации. |
void |
pack() Принуждает это окно к размеру, соответствующему предпочтительному размеру и макетам его подкомпонентов. |
void |
paint(Graphics g) Отображает контейнер. |
boolean |
postEvent(Event e) Устарело. Начиная с JDK версии 1.1 заменено на |
protected void |
processEvent(AWTEvent e) Обрабатывает события в этом окне. |
protected void |
processWindowEvent(WindowEvent e) Обрабатывает события окна, происходящие в этом окне, передавая их всем зарегистрированным объектам WindowListener. |
protected void |
processWindowFocusEvent(WindowEvent e) Обрабатывает события фокуса окна, происходящие в этом окне, передавая их всем зарегистрированным объектам WindowFocusListener. |
protected void |
processWindowStateEvent(WindowEvent e) Обрабатывает события состояния окна, происходящие в этом окне, передавая их всем зарегистрированным объектам |
void |
removeNotify() Делает этот контейнер неотображаемым, удаляя его соединение с ресурсами нативного экрана. |
void |
removeWindowFocusListener(WindowFocusListener l) Удаляет указанного слушателя событий фокуса окна, чтобы он больше не получал события окна из этого окна. |
void |
removeWindowListener(WindowListener l) Удаляет указанного слушателя событий окна, чтобы он больше не получал события окна из этого окна. |
void |
removeWindowStateListener(WindowStateListener l) Удаляет указанного слушателя событий состояния окна, чтобы он больше не получал события окна из этого окна. |
void |
reshape(int x,
int y,
int width,
int height) Устарело. Начиная с JDK версии 1.1, заменено на |
void |
setAlwaysOnTop(boolean alwaysOnTop) Устанавливает, должно ли это окно всегда быть сверху других окон. |
void |
setAutoRequestFocus(boolean autoRequestFocus) Устанавливает, должно ли это окно получать фокус при последующем отображении (с вызовом |
void |
setBackground(Color bgColor) Устанавливает цвет фона этого окна. |
void |
setBounds(int x,
int y,
int width,
int height) Перемещает и изменяет размер этого компонента. |
void |
setBounds(Rectangle r) Перемещает и изменяет размер этого компонента, чтобы он соответствовал новой области |
void |
setCursor(Cursor cursor) Устанавливает изображение курсора на указанный курсор. |
void |
setFocusableWindowState(boolean focusableWindowState) Устанавливает, может ли это окно получить фокус, если оно соответствует другим требованиям, описанным в |
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) Устанавливает, должно ли это окно появляться по умолчанию в системе отображения или по текущему местоположению (возвращаемому |
void |
setLocationRelativeTo(Component c) Устанавливает положение окна относительно указанного компонента в соответствии со следующими сценариями. |
void |
setMinimumSize(Dimension minimumSize) Устанавливает минимальный размер этого окна в постоянное значение. |
void |
setModalExclusionType(Dialog.ModalExclusionType exclusionType) Определяет тип исключения модального режима для этого окна. |
void |
setOpacity(float opacity) Устанавливает непрозрачность окна. |
void |
setShape(Shape shape) Устанавливает форму окна. |
void |
setSize(Dimension d) Изменяет размер этого компонента, чтобы ширина была |
void |
setSize(int width,
int height) Изменяет размер этого компонента, чтобы ширина была |
void |
setType(Window.Type type) Устанавливает тип окна. |
void |
setVisible(boolean b) Отображает или скрывает этот |
void |
show() Устарело. С версии JDK 1.5 заменено на |
void |
toBack() Если это окно видимо, отправляет его на задний план, и это может привести к потере фокуса или активации, если оно является фокусированным или активным окном. |
void |
toFront() Если это окно видимо, выводит его на передний план и может сделать его фокусированным окном. |
Методы, унаследованные от класса 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, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree Методы, унаследованные от класса 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, getPeer, 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, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Конструкторы
Window
public Window(Frame owner)
Создаёт новое, изначально невидимое окно с указанным Frame в качестве владельца. Окно не будет фокусируемым, если его владелец не отображается на экране.
Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если проверка завершится неудачно с SecurityException, создаётся баннер предупреждения.
- Параметры:
-
owner-Frameдля роли владельца илиnullесли у этого окна нет владельца - Исключения:
-
IllegalArgumentException- еслиowner'sGraphicsConfigurationне принадлежит устройству экрана -
HeadlessException- когдаGraphicsEnvironment.isHeadlessвозвращаетtrue - См. также:
-
GraphicsEnvironment.isHeadless(),isShowing()
Window
public Window(Window owner)
Создаёт новое, изначально невидимое окно с указанным Window в качестве владельца. Это окно не будет фокусируемым, если ближайший владелец Frame или Dialog не отображается на экране.
Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если проверка завершится неудачно с SecurityException, создаётся баннер предупреждения.
- Параметры:
-
owner-Windowдля роли владельца илиnullесли у этого окна нет владельца - Исключения:
-
IllegalArgumentException- еслиowner'sGraphicsConfigurationне принадлежит устройству экрана -
HeadlessException- когдаGraphicsEnvironment.isHeadless()возвращаетtrue - C момента:
- 1.2
- См. также:
-
GraphicsEnvironment.isHeadless(),isShowing()
Window
public Window(Window owner,
GraphicsConfiguration gc) Создаёт новое, изначально невидимое окно с указанным владельцем Window и GraphicsConfiguration устройства экрана. Окно не будет фокусируемым, если ближайший владелец Frame или Dialog не отображается на экране.
Если установлен менеджер безопасности, он вызывается для проверки AWTPermission("showWindowWithoutWarningBanner"). Если проверка завершится неудачно с SecurityException, создаётся баннер предупреждения.
- Параметры:
-
owner- окно, которое будет владельцем, илиnullесли у этого окна нет владельца -
gc-GraphicsConfigurationцелевого устройства экрана; еслиgcявляетсяnull, используется системныйGraphicsConfigurationпо умолчанию - Исключения:
-
IllegalArgumentException- еслиgcне принадлежит устройству экрана -
HeadlessException- когдаGraphicsEnvironment.isHeadless()возвращаетtrue - C момента:
- 1.3
- См. также:
-
GraphicsEnvironment.isHeadless(),GraphicsConfiguration.getBounds(),isShowing()
Методы
getIconImages
public List<Image> getIconImages()
Возвращает последовательность изображений, которые будут отображаться в качестве значка для этого окна.
Этот метод возвращает копию внутреннего хранимого списка, поэтому все операции с возвращённым объектом не повлияют на поведение окна.
- Возвращает:
- копию списка значков для этого окна, или пустой список, если у этого окна нет значков.
- C момента:
- 1.6
- См. также:
-
setIconImages(java.util.List<? extends java.awt.Image>),setIconImage(Image)
setIconImages
public void setIconImages(List<? extends Image> icons)
Устанавливает последовательность изображений, которые будут отображаться в качестве значка для этого окна. Последующие вызовы к getIconImages всегда будут возвращать копию списка icons.
В зависимости от возможностей платформы, одно или несколько изображений разных размеров будут использоваться в качестве значка окна.
Список icons сканируется на изображения наиболее подходящих размеров с начала. Если список содержит несколько изображений одного размера, используется первое.
Бесхозные окна без указанного значка используют значок по умолчанию платформы. Значок управляемого окна может быть унаследован от владельца, если не переопределён явно. Установка значка в null или пустой список восстанавливает поведение по умолчанию.
Примечание: системы графического интерфейса могут использовать разные изображения различных размеров для представления окна, в зависимости от контекста (например, декор окна, список окон, панель задач и т. д.). Они также могут использовать только одно изображение для всех контекстов или вообще не использовать изображение.
- Параметры:
-
icons- список изображений значков для отображения. - C момента:
- 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); Примечание: системы графического интерфейса могут использовать разные изображения различных размеров для представления окна, в зависимости от контекста (например, декор окна, список окон, панель задач и т. д.). Они также могут использовать только одно изображение для всех контекстов или вообще не использовать изображение.
- Параметры:
-
image- изображение значка для отображения. - C момента:
- 1.6
- См. также:
-
setIconImages(java.util.List<? extends java.awt.Image>),getIconImages()
addNotify
public void addNotify()
Делает это окно отображаемым, создавая соединение с его нативным ресурсом экрана. Этот метод вызывается внутри инструментарием и не должен вызываться программами напрямую.
- Переопределяет:
-
addNotifyв классеContainer - C момента:
- JDK1.0
- См. также:
-
Component.isDisplayable(),Container.removeNotify()
removeNotify
public void removeNotify()
Делает этот контейнер неотображаемым, удаляя его соединение с его нативным ресурсом экрана. Делание контейнера неотображаемым, приведет к тому, что все его дочерние элементы также станут неотображаемыми. Этот метод вызывается инструментарием внутри и не должен вызываться программами напрямую.
- Переопределяет:
-
removeNotifyв классеContainer - См. также:
-
Component.isDisplayable(),Container.addNotify()
pack
public void pack()
Приводит размер этого окна в соответствие с предпочтительным размером и макетами его подкомпонентов. Результирующая ширина и высота окна автоматически увеличиваются, если любая из размерностей меньше минимального размера, указанного в предыдущем вызове метода setMinimumSize.
Если окно и/или его владелец ещё не отображаются, оба из них делаются отображаемыми перед вычислением предпочтительного размера. Окно валидируется после того, как его размер был вычислен.
setMinimumSize
public void setMinimumSize(Dimension minimumSize)
Устанавливает минимальный размер этого окна в постоянное значение. Последующие вызовы к getMinimumSize всегда будут возвращать это значение. Если текущий размер окна меньше minimumSize, размер окна автоматически увеличивается, чтобы соответствовать минимальному размеру.
Если методы setSize или setBounds вызываются после этого с шириной или высотой меньше, чем указано в методе setMinimumSize, окно автоматически увеличивается, чтобы соответствовать значению minimumSize. Значение minimumSize также влияет на поведение метода pack.
Поведение по умолчанию восстанавливается, если установить минимальный размер в значение null.
Изменение размера может быть ограничено, если пользователь пытается изменить размер окна ниже значения minimumSize. Это поведение зависит от платформы.
- Переопределяет:
-
setMinimumSizeв классеComponent - Параметры:
-
minimumSize- новый минимальный размер этого окна - C момента:
- 1.6
- См. также:
-
Component.setMinimumSize(java.awt.Dimension),Container.getMinimumSize(),Component.isMinimumSizeSet(),setSize(Dimension),pack()
setSize
public void setSize(Dimension d)
Изменяет размер этого компонента так, чтобы его ширина была d.width, а высота d.height.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает иерархию компонентов недействительной.
Значения d.width и d.height автоматически увеличиваются, если любой из них меньше минимального размера, указанного в предыдущем вызове setMinimumSize.
Метод изменяет геометрические данные. Поэтому система графического интерфейса может игнорировать такие запросы или может изменить запрошенные данные, чтобы объект Window был размещён и размером, которые соответствуют настройкам рабочего стола.
- Переопределяет:
-
setSizeв классеComponent - Параметры:
-
d- размер, определяющий новый размер этого компонента - C момента:
- 1.6
- См. также:
-
Component.getSize(),setBounds(int, int, int, int),setMinimumSize(java.awt.Dimension)
setSize
public void setSize(int width,
int height) Изменяет размер этого компонента так, чтобы его ширина была width, а высота height.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает иерархию компонентов недействительной.
Значения width и height автоматически увеличиваются, если любое из них меньше минимального размера, указанного предыдущим вызовом setMinimumSize.
Метод изменяет данные, связанные с геометрией. Поэтому система отображения может игнорировать такие запросы или может изменить запрошенные данные таким образом, чтобы объект Window был размещен и изменен в размерах, соответствующим настройкам рабочего стола.
- Overrides:
-
setSizeв классеComponent - Parameters:
-
width- новая ширина этого компонента в пикселях -
height- новая высота этого компонента в пикселях - Since:
- 1.6
- See Also:
-
Component.getSize(),setBounds(int, int, int, int),setMinimumSize(java.awt.Dimension)
setLocation
public void setLocation(int x,
int y) Перемещает этот компонент в новое положение. Левый верхний угол нового положения задается параметрами x и y в пространстве координат родительского элемента этого компонента.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает иерархию компонентов недействительной.
Метод изменяет данные, связанные с геометрией. Поэтому система отображения может игнорировать такие запросы или может изменить запрошенные данные таким образом, чтобы объект Window был размещен и изменен в размерах, соответствующим настройкам рабочего стола.
- Overrides:
-
setLocationв классеComponent - Parameters:
-
x- координата x левого верхнего угла нового положения в пространстве координат родительского элемента -
y- координата y левого верхнего угла нового положения в пространстве координат родительского элемента - See Also:
-
Component.getLocation(),Component.setBounds(int, int, int, int),Component.invalidate()
setLocation
public void setLocation(Point p)
Перемещает этот компонент в новое положение. Левый верхний угол нового положения задается точкой p. Точка p задается в пространстве координат родительского элемента.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает иерархию компонентов недействительной.
Метод изменяет данные, связанные с геометрией. Поэтому система отображения может игнорировать такие запросы или может изменить запрошенные данные таким образом, чтобы объект Window был размещен и изменен в размерах, соответствующим настройкам рабочего стола.
- Overrides:
-
setLocationв классеComponent - Parameters:
-
p- точка, определяющая левый верхний угол нового положения, заданная в пространстве координат родительского элемента этого компонента - See Also:
-
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).
setVisible
public void setVisible(boolean b)
Отображает или скрывает этот Window в зависимости от значения параметра b.
Если метод отображает окно, то окно также фокусируется при следующих условиях:
- Окно соответствует требованиям, указанным в методе
isFocusableWindow(). - Свойство
WindowобъектаautoRequestFocusимеет значениеtrue. - Система отображения позволяет окну получить фокус.
autoRequestFocus). Свойство не учитывается, если окно является модальным диалоговым окном, которое блокирует окно с текущим фокусом. Разработчики не должны предполагать, что окно является фокусированным или активным, пока оно не получит событие WINDOW_GAINED_FOCUS или WINDOW_ACTIVATED.
- Overrides:
-
setVisibleв классеComponent - Parameters:
-
b- еслиtrue, делаетWindowвидимым, в противном случае скрываетWindow. ЕслиWindowи/или его владелец еще не отображаются, оба делаются отображаемыми.Windowбудет проверен перед отображением. ЕслиWindowуже отображается, это выведетWindowна передний план.Если
false, скрывает этотWindow, его подкомпоненты и всех его дочерние элементы.Windowи его подкомпоненты можно снова сделать видимыми с помощью вызова#setVisible(true). - See Also:
-
Component.isDisplayable(),Component.setVisible(boolean),toFront(),dispose(),setAutoRequestFocus(boolean),isFocusableWindow()
show
@Deprecated public void show()
Устарело. Начиная с JDK версии 1.5, заменено на setVisible(boolean).
Делает окно видимым. Если окно и/или его владелец еще не отображаются, оба делаются отображаемыми. Окно будет проверено перед отображением. Если окно уже отображается, это приведет окно на передний план.
- Overrides:
-
showв классеComponent - See Also:
-
Component.isDisplayable(),toFront()
hide
@Deprecated public void hide()
Устарело. Начиная с JDK версии 1.5, заменено на setVisible(boolean).
Скрыть это окно, его подкомпоненты и все его дочерние элементы. Окно и его подкомпоненты можно снова сделать видимыми с помощью вызова show.
dispose
public void dispose()
Освобождает все ресурсы экрана, используемые этим Window, его подкомпонентами и всеми его дочерними элементами. То есть ресурсы этих Component будут уничтожены, вся занимаемая ими память будет возвращена ОС, и они будут помечены как неотображаемые.
Window и его подкомпоненты можно снова сделать отображаемыми, перестроив ресурсы с последующим вызовом pack или show. Состояния воссозданных Window и его подкомпонентов будут идентичны состояниям этих объектов в момент, когда Window был удален (не учитывая дополнительных изменений между этими действиями).
Примечание: Когда последнее отображаемое окно в виртуальной машине Java (VM) удаляется, VM может завершиться. См. Проблемы с потоками AWT для получения дополнительной информации.
- See Also:
-
Component.isDisplayable(),pack(),show()
toFront
public void toFront()
Если это окно отображается, выводит это окно на передний план и может сделать его активным.
Размещает это окно в верхней части стека и отображает его перед другими окнами в этой виртуальной машине. Никаких действий не будет выполнено, если это окно не отображается. Некоторые платформы не позволяют окнам, владеющим другими окнами, появляться поверх этих окон. Некоторые платформы могут не позволить этой виртуальной машине разместить свои окна поверх окон native-приложений или окон других виртуальных машин. Это разрешение может зависеть от того, является ли окно в этой виртуальной машине уже активным. Будут предприняты все попытки перемещения этого окна как можно выше в стеке; однако, разработчики не должны предполагать, что этот метод поместит это окно над всеми другими окнами в каждой ситуации.
Разработчики не должны предполагать, что это окно является активным, пока оно не получит событие WINDOW_GAINED_FOCUS или WINDOW_ACTIVATED. На платформах, где верхнее окно является активным, этот метод, скорее всего, активирует это окно (если оно еще не активировано) при следующих условиях:
- Окно соответствует требованиям, описанным в методе
isFocusableWindow(). - Свойство окна
autoRequestFocusимеет значениеtrue. - Система отображения позволяет окну получить фокус.
Если этот метод заставит это окно получить фокус, и это окно является окном Frame или Dialog, оно также станет активным. Если это окно получило фокус, но это не окно Frame или Dialog, то первое окно Frame или Dialog, являющееся владельцем этого окна, будет активировано.
Если это окно заблокировано модальным диалоговым окном, то блокирующее диалоговое окно выводится на передний план и остается поверх заблокированного окна.
- See Also:
-
toBack(),setAutoRequestFocus(boolean),isFocusableWindow()
toBack
public void toBack()
Если это окно отображается, отправляет это окно на задний план и может привести к потере фокуса или активации, если это фокусированное или активное окно.
Размещает это окно внизу порядка стекирования и отображает его позади других окон в этой виртуальной машине. Никаких действий не будет, если это окно не отображается. Некоторые платформы не позволяют окнам, принадлежащим другим окнам, отображаться ниже своих владельцев. Будут предприняты все возможные попытки переместить это окно как можно ниже в порядке стекирования; однако разработчики не должны предполагать, что этот метод переместит это окно ниже всех других окон в любой ситуации.
Из-за различий в системах отображения нативных окон, никаких гарантий относительно изменений фокусированного и активного окон не может быть. Разработчики никогда не должны предполагать, что это окно больше не является фокусированным или активным окном, пока это окно не получит событие WINDOW_LOST_FOCUS или WINDOW_DEACTIVATED. На платформах, где верхнее окно является фокусированным окном, этот метод, вероятно, приведет к потере фокуса этим окном. В этом случае фокус получит следующее доступное для фокусировки окно в этой виртуальной машине. На платформах, где порядок стекирования обычно не влияет на фокусированное окно, этот метод, вероятно, оставит фокусированные и активные окна неизменными.
- См. также:
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 - Возвращает:
- локаль, установленная для этого окна.
- С:
- JDK1.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. - С:
- JDK1.1
- См. также:
-
Component.getCursor(),Cursor
getOwner
public Window getOwner()
Возвращает владельца этого окна.
- С:
- 1.2
getOwnedWindows
public Window[] getOwnedWindows()
Возвращает массив, содержащий все окна, которые в настоящее время принадлежат этому окну.
- С:
- 1.2
getWindows
public static Window[] getWindows()
Возвращает массив всех Windowов, как принадлежащих, так и без владельца, созданных этим приложением. Если вызвана из апплета, массив включает только Windowы, доступные этому апплету.
Предупреждение: этот метод может вернуть окна, созданные системой, такие как диалог печати. Приложения не должны предполагать существование этих диалогов, ни какие-либо сведения о этих диалогах, такие как положение компонентов, LayoutManagerы или сериализация.
- С:
- 1.6
- См. также:
-
Frame.getFrames(),getOwnerlessWindows()
getOwnerlessWindows
public static Window[] getOwnerlessWindows()
Возвращает массив всех Windowов, созданных этим приложением и не имеющих владельца. Они включают Frameы и окна Dialogы и Windowы без владельца. Если вызвана из апплета, массив включает только Windowы, доступные этому апплету.
Предупреждение: этот метод может вернуть окна, созданные системой, такие как диалог печати. Приложения не должны предполагать существование этих диалогов, ни какие-либо сведения о этих диалогах, такие как положение компонентов, LayoutManagerы или сериализация.
- С:
- 1.6
- См. также:
-
Frame.getFrames(),getWindows()
setModalExclusionType
public void setModalExclusionType(Dialog.ModalExclusionType exclusionType)
Определяет тип исключения модальности для этого окна. Если окно исключено по модальности, оно не блокируется некоторыми модальными диалогами. См. Dialog.ModalExclusionType для возможных типов исключения модальности.
Если указанный тип не поддерживается, используется NO_EXCLUDE.
Примечание: изменение типа исключения модальности для видимого окна может не иметь эффекта, пока оно не будет скрыто, а затем снова показано.
- Параметры:
-
exclusionType- тип исключения модальности для этого окна; значениеnullэквивалентноNO_EXCLUDE - Исключения:
-
SecurityException- если поток вызова не имеет разрешения установить свойство исключения модальности для окна с заданнымexclusionType - С:
- 1.6
- См. также:
-
Dialog.ModalExclusionType,getModalExclusionType(),Toolkit.isModalExclusionTypeSupported(java.awt.Dialog.ModalExclusionType)
getModalExclusionType
public Dialog.ModalExclusionType getModalExclusionType()
Возвращает тип исключения модальности этого окна.
- Возвращает:
- тип исключения модальности этого окна
- С:
- 1.6
- См. также:
-
Dialog.ModalExclusionType,setModalExclusionType(java.awt.Dialog.ModalExclusionType)
addWindowListener
public void addWindowListener(WindowListener l)
Добавляет указанный слушатель окон для получения событий окна из этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
См. Вопросы потоковой обработки AWT для получения подробной информации о модели потоковой обработки AWT.
- Параметры:
-
l- слушатель окна - См. также:
-
removeWindowListener(java.awt.event.WindowListener),getWindowListeners()
addWindowStateListener
public void addWindowStateListener(WindowStateListener l)
Добавляет указанного слушателя состояния окна для получения событий окна из этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
См. Вопросы потоковой обработки AWT для получения подробной информации о модели потоковой обработки AWT.
- Параметры:
-
l- слушатель состояния окна - С:
- 1.4
- См. также:
-
removeWindowStateListener(java.awt.event.WindowStateListener),getWindowStateListeners()
addWindowFocusListener
public void addWindowFocusListener(WindowFocusListener l)
Добавляет указанного слушателя фокуса окна для получения событий окна из этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
См. Вопросы потоковой обработки AWT для получения подробной информации о модели потоковой обработки AWT.
- Параметры:
-
l- слушатель фокуса окна - С:
- 1.4
- См. также:
-
removeWindowFocusListener(java.awt.event.WindowFocusListener),getWindowFocusListeners()
removeWindowListener
public void removeWindowListener(WindowListener l)
Удаляет указанного слушателя окна, чтобы он больше не получал события окна из этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
См. Вопросы потоковой обработки AWT для получения подробной информации о модели потоковой обработки AWT.
- Параметры:
-
l- слушатель окна - См. также:
-
addWindowListener(java.awt.event.WindowListener),getWindowListeners()
removeWindowStateListener
public void removeWindowStateListener(WindowStateListener l)
Удаляет указанный слушатель состояния окна, чтобы он больше не получал события окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
Для получения подробностей о модели потоков AWT см. Проблемы с потоками AWT.
- Параметры:
-
l- слушатель состояния окна - С:
- 1.4
- См. также:
-
addWindowStateListener(java.awt.event.WindowStateListener),getWindowStateListeners()
removeWindowFocusListener
public void removeWindowFocusListener(WindowFocusListener l)
Удаляет указанного слушателя фокуса окна, чтобы он больше не получал события окна от этого окна. Если l равно null, исключение не выбрасывается, и никаких действий не выполняется.
Для получения подробностей о модели потоков AWT см. Проблемы с потоками AWT.
- Параметры:
-
l- слушатель фокуса окна - С:
- 1.4
- См. также:
-
addWindowFocusListener(java.awt.event.WindowFocusListener),getWindowFocusListeners()
getWindowListeners
public WindowListener[] getWindowListeners()
Возвращает массив всех слушателей окна, зарегистрированных в этом окне.
- Возвращает:
- все слушатели окна этого окна или пустой массив, если слушатели окна не зарегистрированы в данный момент
- С:
- 1.4
- См. также:
-
addWindowListener(java.awt.event.WindowListener),removeWindowListener(java.awt.event.WindowListener)
getWindowFocusListeners
public WindowFocusListener[] getWindowFocusListeners()
Возвращает массив всех слушателей фокуса окна, зарегистрированных в этом окне.
- Возвращает:
- все слушатели фокуса окна этого окна или пустой массив, если слушатели фокуса окна не зарегистрированы в данный момент
- С:
- 1.4
- См. также:
-
addWindowFocusListener(java.awt.event.WindowFocusListener),removeWindowFocusListener(java.awt.event.WindowFocusListener)
getWindowStateListeners
public WindowStateListener[] getWindowStateListeners()
Возвращает массив всех слушателей состояния окна, зарегистрированных в этом окне.
- Возвращает:
- все слушатели состояния окна этого окна или пустой массив, если слушатели состояния окна не зарегистрированы в данный момент
- С:
- 1.4
- См. также:
-
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));Если такие слушатели не существуют, этот метод возвращает пустой массив.
- Переопределяет:
-
getListenersв классеContainer - Параметры:
-
listenerType- тип запрашиваемых слушателей; этот параметр должен указывать интерфейс, который наследуется отjava.util.EventListener - Возвращает:
- массив всех объектов, зарегистрированных в качестве
FooListenerна этом окне, или пустой массив, если такие слушатели не были добавлены - Исключения:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener -
NullPointerException- еслиlistenerTypeравноnull - С:
- 1.3
- См. также:
getWindowListeners()
processEvent
protected void processEvent(AWTEvent e)
Обрабатывает события в этом окне. Если событие является WindowEvent, вызывается метод processWindowEvent, в противном случае вызывается метод суперкласса processEvent.
Обратите внимание, что если параметр события null, поведение не определено и может привести к исключению.
- Переопределяет:
-
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()
Возвращает дочерний компонент Component этого окна, у которого есть фокус, если это окно имеет фокус; в противном случае возвращает null.
- Возвращает:
- дочерний компонент Component с фокусом или null, если у этого окна нет фокуса
- См. также:
-
getMostRecentFocusOwner(),isFocused()
getMostRecentFocusOwner
public Component getMostRecentFocusOwner()
Возвращает дочерний компонент Component этого окна, который получит фокус, когда у этого окна есть фокус. Если у этого окна сейчас есть фокус, этот метод возвращает тот же компонент, что и getFocusOwner(). Если у этого окна нет фокуса, то возвращается дочерний компонент Component, который наиболее недавно запросил фокус. Если ни один дочерний компонент Component никогда не запрашивал фокус, и это фокусируемое окно, то возвращается начальный фокусируемый компонент этого окна. Если ни один дочерний компонент Component никогда не запрашивал фокус, и это нефокусируемое окно, возвращается null.
- Возвращает:
- дочерний компонент Component, который получит фокус, когда у этого окна есть фокус
- С тех пор:
- 1.4
- См. также:
-
getFocusOwner(),isFocused(),isFocusableWindow()
isActive
public boolean isActive()
Возвращает, является ли это окно активным. Только фрейм Frame или диалоговое окно Dialog может быть активным. Система оконного интерфейса может обозначать активное окно или его дочерние элементы специальными украшениями, такими как выделенная строка заголовка. Активное окно всегда является либо фокусированным окном, либо первым фреймом Frame или диалоговым окном Dialog, которое является владельцем фокусированного окна.
- Возвращает:
- является ли это активным окном.
- С тех пор:
- 1.4
- См. также:
isFocused()
isFocused
public boolean isFocused()
Возвращает, имеет ли это окно фокус. Если существует владелец фокуса, фокусированное окно — это окно, которое является или содержит этого владельца фокуса. Если нет владельца фокуса, то ни одно окно не имеет фокуса.
Если фокусированное окно является фреймом Frame или диалоговым окном Dialog, то оно также является активным окном. В противном случае активное окно — это первый фрейм Frame или диалоговое окно Dialog, которое является владельцем фокусированного окна.
- Возвращает:
- является ли это фокусированным окном.
- С тех пор:
- 1.4
- См. также:
isActive()
getFocusTraversalKeys
public Set<AWTKeyStroke> getFocusTraversalKeys(int id)
Получает клавишу перехода фокуса для этого окна. (См. setFocusTraversalKeys для полного описания каждой клавиши.)
Если клавиша перехода не была явно установлена для этого окна, то возвращается клавиша перехода родителя этого окна. Если клавиша перехода не была явно установлена ни для одного из предков этого окна, то возвращается стандартная клавиша перехода текущего менеджера KeyboardFocusManager.
- Переопределяет:
-
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 - С тех пор:
- 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)
Ничего не делает, потому что окна всегда должны быть корнями цикла перехода фокуса. Переданное значение игнорируется.
- Переопределяет:
-
setFocusCycleRootв классеContainer - Параметры:
-
focusCycleRoot- это значение игнорируется - С тех пор:
- 1.4
- См. также:
-
isFocusCycleRoot(),Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy),Container.getFocusTraversalPolicy()
isFocusCycleRoot
public final boolean isFocusCycleRoot()
Всегда возвращает true, потому что все окна должны быть корнями цикла перехода фокуса.
- Переопределяет:
-
isFocusCycleRootв классеContainer - Возвращает:
true- С тех пор:
- 1.4
- См. также:
-
setFocusCycleRoot(boolean),Container.setFocusTraversalPolicy(java.awt.FocusTraversalPolicy),Container.getFocusTraversalPolicy()
getFocusCycleRootAncestor
public final Container getFocusCycleRootAncestor()
Всегда возвращает null, так как у окон нет предков; они представляют вершину иерархии компонентов.
- Переопределяет:
-
getFocusCycleRootAncestorв классеComponent - Возвращает:
null- С тех пор:
- 1.4
- См. также:
Container.isFocusCycleRoot()
isFocusableWindow
public final boolean isFocusableWindow()
Возвращает, может ли это окно стать фокусированным окном, то есть, может ли это окно или любой из его подкомпонентов стать владельцем фокуса. Для того, чтобы фрейм Frame или диалоговое окно Dialog были фокусируемыми, их состояние фокусируемого окна должно быть установлено в true. Для того, чтобы окно, которое не является фреймом Frame или диалоговым окном Dialog, было фокусируемым, его состояние фокусируемого окна должно быть установлено в true, его ближайшее владеющее фрейм Frame или диалоговое окно должно быть отображено на экране, и оно должно содержать по крайней мере один компонент Component в цикле перехода фокуса. Если ни одно из этих условий не выполняется, то ни это окно, ни любой из его подкомпонентов не могут стать владельцем фокуса.
- Возвращает:
-
trueесли это окно может быть фокусированным окном;falseв противном случае - С тех пор:
- 1.4
- См. также:
-
getFocusableWindowState(),setFocusableWindowState(boolean),isShowing(),Component.isFocusable()
getFocusableWindowState
public boolean getFocusableWindowState()
Возвращает, может ли это окно стать фокусированным окном, если оно удовлетворяет другим требованиям, описанным в isFocusableWindow. Если этот метод возвращает false, то isFocusableWindow также вернет false. Если этот метод возвращает true, то isFocusableWindow может вернуть true или false, в зависимости от других требований, которые должны быть выполнены для того, чтобы окно было фокусируемым.
По умолчанию все окна имеют состояние фокусируемого окна true.
- Возвращает:
- может ли это окно быть фокусированным окном
- С тех пор:
- 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- может ли это окно быть фокусируемым окном - С версии:
- 1.4
- См. также:
-
isFocusableWindow(),getFocusableWindowState(),isShowing(),Component.setFocusable(boolean)
setAutoRequestFocus
public void setAutoRequestFocus(boolean autoRequestFocus)
Задает, должно ли это окно получать фокус при последующем отображении (с вызовом setVisible(true)) или при перемещении на передний план (с вызовом toFront()).
Обратите внимание, что setVisible(true) может вызываться косвенно (например, когда отображение владельца окна приводит к отображению окна). toFront() также может вызываться косвенно (например, когда setVisible(true) вызывается для уже видимого окна). Во всех таких случаях это свойство также вступает в силу.
Значение свойства не наследуется дочерними окнами.
- Параметры:
-
autoRequestFocus- должно ли это окно получать фокус при последующем отображении или перемещении на передний план - С версии:
- 1.7
- См. также:
-
isAutoRequestFocus(),isFocusableWindow(),setVisible(boolean),toFront()
isAutoRequestFocus
public boolean isAutoRequestFocus()
Возвращает, должно ли это окно получать фокус при последующем отображении (с вызовом setVisible(true)) или при перемещении на передний план (с вызовом toFront()).
По умолчанию окно имеет autoRequestFocus значение true.
- Возвращает:
-
autoRequestFocusзначение - С версии:
- 1.7
- См. также:
setAutoRequestFocus(boolean)
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)
Добавляет PropertyChangeListener в список прослушивателей. Прослушиватель регистрируется для всех связанных свойств этого класса, включая следующие:
- шрифт этого окна ("font")
- цвет фона этого окна ("background")
- цвет переднего плана этого окна ("foreground")
- фокусируемость этого окна ("focusable")
- состояние включения клавиш перехода фокуса этого окна ("focusTraversalKeysEnabled")
- набор клавиш FORWARD_TRAVERSAL_KEYS этого окна ("forwardFocusTraversalKeys")
- набор клавиш BACKWARD_TRAVERSAL_KEYS этого окна ("backwardFocusTraversalKeys")
- набор клавиш UP_CYCLE_TRAVERSAL_KEYS этого окна ("upCycleFocusTraversalKeys")
- набор клавиш DOWN_CYCLE_TRAVERSAL_KEYS этого окна ("downCycleFocusTraversalKeys")
- политика перехода фокуса этого окна ("focusTraversalPolicy")
- состояние фокусируемого окна этого окна ("focusableWindowState")
- состояние "всегда сверху" этого окна ("alwaysOnTop")
Если listener имеет значение null, исключение не генерируется и никаких действий не выполняется.
- Переопределяет:
-
addPropertyChangeListenerв классеContainer - Параметры:
-
listener- добавляемый PropertyChangeListener - См. также:
-
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")
- набор клавиш FORWARD_TRAVERSAL_KEYS этого окна ("forwardFocusTraversalKeys")
- набор клавиш BACKWARD_TRAVERSAL_KEYS этого окна ("backwardFocusTraversalKeys")
- набор клавиш UP_CYCLE_TRAVERSAL_KEYS этого окна ("upCycleFocusTraversalKeys")
- набор клавиш DOWN_CYCLE_TRAVERSAL_KEYS этого окна ("downCycleFocusTraversalKeys")
- политика перехода фокуса этого окна ("focusTraversalPolicy")
- состояние фокусируемого окна этого окна ("focusableWindowState")
- состояние "всегда сверху" этого окна ("alwaysOnTop")
Если listener имеет значение null, исключение не генерируется и никаких действий не выполняется.
- Переопределяет:
-
addPropertyChangeListenerв классеContainer - Параметры:
-
propertyName- одно из имен свойств, перечисленных выше -
listener- добавляемый PropertyChangeListener - См. также:
-
addPropertyChangeListener(java.beans.PropertyChangeListener),Component.removePropertyChangeListener(java.beans.PropertyChangeListener)
isValidateRoot
public boolean isValidateRoot()
Указывает, является ли этот контейнер корнем валидации.
Window объекты являются корнями валидации, и, следовательно, они переопределяют этот метод, чтобы вернуть true.
- Переопределяет:
-
isValidateRootв классеContainer - Возвращает:
true- С версии:
- 1.7
- См. также:
Container.isValidateRoot()
postEvent
@Deprecated public boolean postEvent(Event e)
Устарело. Начиная с версии JDK 1.1 заменено на dispatchEvent(AWTEvent).
- Указано в:
-
postEventв интерфейсеMenuContainer - Переопределяет:
-
postEventв классеComponent
isShowing
public boolean isShowing()
Проверяет, отображается ли это окно на экране.
- Переопределяет:
-
isShowingв классеComponent - Возвращает:
-
trueесли компонент отображается,falseв противном случае - См. также:
Component.setVisible(boolean)
applyResourceBundle
@Deprecated public void applyResourceBundle(ResourceBundle rb)
Устарело. Начиная с J2SE 1.4, заменено на Component.applyComponentOrientation.
applyResourceBundle
@Deprecated public void applyResourceBundle(String rbName)
Устарело. Начиная с J2SE 1.4, заменено на Component.applyComponentOrientation.
setType
public void setType(Window.Type type)
Устанавливает тип окна. Этот метод можно вызывать только тогда, когда окно не отображается.
- Исключения:
-
IllegalComponentStateException- если окно отображается. -
IllegalArgumentException- если типnull - С версии:
- 1.7
- См. также:
-
Component.isDisplayable(),getType()
getType
public Window.Type getType()
Возвращает тип окна.
- С версии:
- 1.7
- См. также:
setType(java.awt.Window.Type)
getAccessibleContext
public AccessibleContext getAccessibleContext()
Получает AccessibleContext, связанный с этим окном. Для окон AccessibleContext имеет вид AccessibleAWTWindow. При необходимости создается новый экземпляр AccessibleAWTWindow.
- Указано в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеComponent - Возвращает:
- AccessibleAWTWindow, который служит AccessibleContext этого окна
- С версии:
- 1.3
setLocationRelativeTo
public void setLocationRelativeTo(Component c)
Устанавливает расположение окна относительно указанного компонента в соответствии со следующими сценариями.
Целевой экран, упомянутый ниже, — это экран, на который должно быть помещено окно после вызова метода setLocationRelativeTo.
- Если компонент является
null, илиGraphicsConfiguration, связанное с этим компонентом, являетсяnull, окно помещается в центр экрана. Точку центра можно получить с помощью методаGraphicsEnvironment.getCenterPoint. - Если компонент не является
null, но он в данный момент не отображается, окно помещается в центр целевого экрана, определённогоGraphicsConfiguration, связанного с этим компонентом. - Если компонент не является
nullи отображается на экране, то окно размещается таким образом, что центр окна совпадает с центром компонента.
Если конфигурация экранов не позволяет перемещать окно с одного экрана на другой, то окно размещается только в позиции, определённой в соответствии с вышеуказанными условиями, и его GraphicsConfiguration не изменяется.
Примечание: Если нижний край окна выходит за пределы экрана, то окно помещается на ту сторону от Component, которая ближе к центру экрана. Таким образом, если компонент находится в правой части экрана, окно помещается слева, и наоборот.
Если после расчёта расположения окна верхний, левый или правый край окна выходит за пределы экрана, то окно размещается так, что верхний, левый или правый край окна совпадает с соответствующим краем экрана. Если оба левых и правых края окна выходят за пределы экрана, окно размещается слева от экрана. Аналогичное размещение произойдёт, если оба верхних и нижних края выходят за пределы экрана. В этом случае окно размещается в верхней части экрана.
Метод изменяет данные, связанные с геометрией. Поэтому, система окон может игнорировать такие запросы или может изменить запрошенные данные таким образом, чтобы объект Window был размещён и размером соответствующим настройкам рабочего стола.
- Параметры:
-
c- компонент, относительно которого определяется расположение окна - С:
- 1.4
- См. также:
GraphicsEnvironment.getCenterPoint()
createBufferStrategy
public void createBufferStrategy(int numBuffers)
Создаёт новую стратегию для многобуферизации на этом компоненте. Многобуферизация полезна для повышения производительности рендеринга. Этот метод пытается создать лучшую доступную стратегию с указанным количеством буферов. Он всегда создаст стратегию с указанным количеством буферов. Сначала используется стратегия смены страниц, затем стратегия с блинкованием, используя ускоренные буферы. Наконец, используется неускоренная стратегия блинкования.
Каждый раз, когда вызывается этот метод, существующая стратегия буферизации для этого компонента отбрасывается.
- Параметры:
-
numBuffers- количество буферов для создания - Исключения:
-
IllegalArgumentException- если numBuffers меньше 1. -
IllegalStateException- если компонент не отображается - С:
- 1.4
- См. также:
-
Component.isDisplayable(),getBufferStrategy()
createBufferStrategy
public void createBufferStrategy(int numBuffers,
BufferCapabilities caps)
throws AWTException Создаёт новую стратегию для многобуферизации на этом компоненте с необходимыми возможностями буфера. Это полезно, например, если требуется только ускоренная память или смена страниц (как указано в возможностях буфера).
Каждый раз, когда вызывается этот метод, существующая стратегия буферизации для этого компонента отбрасывается.
- Параметры:
-
numBuffers- количество буферов для создания, включая передний буфер -
caps- необходимые возможности для создания стратегии буфера; не может бытьnull - Исключения:
-
AWTException- если предоставленные возможности не могут быть поддерживаемы или достигнуты; это может произойти, например, если доступно недостаточно ускоренной памяти или если указана смена страниц, но она невозможна. -
IllegalArgumentException- если numBuffers меньше 1, или если caps являетсяnull - С:
- 1.4
- См. также:
getBufferStrategy()
getBufferStrategy
public BufferStrategy getBufferStrategy()
Возвращает стратегию буферизации, используемую этим компонентом. Этот метод вернёт null, если стратегия буферизации ещё не была создана или была удалена.
- Возвращает:
- стратегию буферизации, используемую этим компонентом
- С:
- 1.4
- См. также:
createBufferStrategy(int)
setLocationByPlatform
public void setLocationByPlatform(boolean locationByPlatform)
Устанавливает, должен ли этот Window появляться в стандартном расположении для системы отображения или в текущем расположении (возвращённом методом 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. - Параметры:
-
locationByPlatform-trueесли это окно должно появиться в стандартном расположении,falseесли в текущем расположении - Исключения:
-
IllegalComponentStateException- если окно отображается на экране, и locationByPlatform являетсяtrue. - С:
- 1.5
- См. также:
-
setLocation(int, int),isShowing(),setVisible(boolean),isLocationByPlatform(),System.getProperty(String)
isLocationByPlatform
public boolean isLocationByPlatform()
Возвращает true, если это окно будет отображено в стандартном расположении для системы отображения при следующем отображении. Этот метод всегда возвращает false, если окно уже отображается на экране.
- Возвращает:
- является ли расположение по умолчанию платформы
- С:
- 1.5
- См. также:
-
setLocationByPlatform(boolean),isShowing()
setBounds
public void setBounds(int x,
int y,
int width,
int height) Перемещает и изменяет размер этого компонента. Новое расположение верхнего левого угла задаётся значениями x и y, а новый размер — значениями width и height.
Этот метод изменяет информацию, связанную с макетом, и поэтому делает недействительной иерархию компонентов.
Значения width или height автоматически увеличиваются, если какое-либо из них меньше минимального размера, как указано в предыдущем вызове setMinimumSize.
Метод изменяет данные, связанные с геометрией. Поэтому система окон может игнорировать такие запросы или может изменить запрошенные данные таким образом, чтобы объект Window был размещён и размером соответствующим настройкам рабочего стола.
- Переопределяет:
-
setBoundsв классеComponent - Параметры:
-
x- новая координата x этого компонента -
y- новая координата y этого компонента -
width- новый размерwidthэтого компонента -
height- новый размерheightэтого компонента - С:
- 1.6
- См. также:
-
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в классеComponent - Параметры:
-
r— новая область отображения для этого компонента - С:
- 1.6
- См. также:
-
Component.getBounds(),setLocation(int, int),setLocation(Point),setSize(int, int),setSize(Dimension),setMinimumSize(java.awt.Dimension),setLocationByPlatform(boolean),isLocationByPlatform()
getOpacity
public float getOpacity()
Возвращает непрозрачность окна.
- Возвращает:
- непрозрачность окна
- С:
- 1.7
- См. также:
-
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)).
- Параметры:
-
opacity— уровень непрозрачности, который нужно установить для окна - Исключения:
-
IllegalArgumentException— если непрозрачность находится вне диапазона [0..1] -
IllegalComponentStateException— если окно имеет оформление, а непрозрачность меньше чем1.0f -
IllegalComponentStateException— если окно находится в полноэкранном режиме, а непрозрачность меньше чем1.0f -
UnsupportedOperationException— если прозрачностьGraphicsDevice.WindowTranslucency#TRANSLUCENT TRANSLUCENTне поддерживается, а непрозрачность меньше чем1.0f - С:
- 1.7
- См. также:
-
getOpacity(),setBackground(Color),setShape(Shape),Frame.isUndecorated(),Dialog.isUndecorated(),GraphicsDevice.WindowTranslucency,GraphicsDevice.isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
getShape
public Shape getShape()
Возвращает форму окна. Возвращаемое значение может отличаться от ранее установленного значения с помощью setShape(shape), но гарантируется, что оно представляет ту же форму.
- Возвращает:
- форму окна или
null, если для окна не задана форма - С:
- 1.7
- См. также:
-
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.
- Параметры:
-
shape— форма, которую нужно установить для окна - Исключения:
-
IllegalComponentStateException— если форма неnull, а окно имеет оформление -
IllegalComponentStateException— если форма неnull, а окно находится в полноэкранном режиме -
UnsupportedOperationException— если форма неnull, а прозрачностьPERPIXEL_TRANSPARENTне поддерживается - С:
- 1.7
- См. также:
-
getShape(),setBackground(Color),setOpacity(float),Frame.isUndecorated(),Dialog.isUndecorated(),GraphicsDevice.WindowTranslucency,GraphicsDevice.isWindowTranslucencySupported(GraphicsDevice.WindowTranslucency)
getBackground
public Color getBackground()
Получает цвет фона этого окна.
Обратите внимание, что альфа-компонент возвращаемого цвета указывает, находится ли окно в режиме непрозрачности (прозрачность на основе каждого пикселя).
- Overrides:
-
getBackgroundв классеComponent - Возвращает:
- цвет фона этого компонента
- См. также:
-
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, фон не отрисовывается.
Фактический уровень прозрачности данного пикселя также зависит от непрозрачности окна (см. IllegalComponentStateException) и текущей формы этого окна (см. setShape(Shape)).
Обратите внимание, что отрисовка пикселя с альфа-значением 0 может или не может отключить обработку событий мыши на этом пикселе. Это зависит от платформы. Для того, чтобы убедиться, что события мыши не обрабатываются для конкретного пикселя, пиксель должен быть исключён из формы окна.
Включение режима прозрачности на основе каждого пикселя может изменить конфигурацию графики этого окна из-за требований родной платформы.
- Переопределяет:
-
setBackgroundв классеComponent - Параметры:
-
bgColor- цвет, который станет фоном этого окна. - Исключения:
-
IllegalComponentStateException- если альфа-значение заданного цвета фона меньше1.0fи окно декорировано -
IllegalComponentStateException- если альфа-значение заданного цвета фона меньше1.0fи окно в полноэкранном режиме -
UnsupportedOperationException- если альфа-значение заданного цвета фона меньше1.0fи прозрачностьPERPIXEL_TRANSLUCENTне поддерживается - См. также:
-
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.
- Переопределяет:
-
isOpaqueв классеComponent - Возвращает:
-
trueесли окно непрозрачное,falseв противном случае - См.:
- 1.7
- См. также:
-
getBackground(),setBackground(Color)
paint
public void paint(Graphics g)
Отображает контейнер. Это пересылает отображение любым лёгким компонентам, которые являются потомками этого контейнера. Если этот метод переопределяется, super.paint(g) должен вызываться, чтобы лёгкие компоненты отображались должным образом. Если дочерний компонент полностью перекрывается текущими настройками обрезки в g, paint() не будет пересылаться этому дочернему элементу.
- Переопределяет:
-
paintв классеContainer - Параметры:
-
g- указанное графическое окно - См.:
- 1.7
- См. также:
Component.update(Graphics)
© 1993, 2020, 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.