Класс JComponent
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable
- Прямые известные подклассы:
-
AbstractButton,BasicInternalFrameTitlePane,Box,Box.Filler,JColorChooser,JComboBox,JFileChooser,JInternalFrame,JInternalFrame.JDesktopIcon,JLabel,JLayer,JLayeredPane,JList,JMenuBar,JOptionPane,JPanel,JPopupMenu,JProgressBar,JRootPane,JScrollBar,JScrollPane,JSeparator,JSlider,JSpinner,JSplitPane,JTabbedPane,JTable,JTableHeader,JTextComponent,JToolBar,JToolTip,JTree,JViewport
@JavaBean(defaultProperty="UIClassID") public abstract class JComponent extends Container implements Serializable
JComponent, необходимо поместить компонент в иерархию содержаний, корень которой — контейнер Swing верхнего уровня. Контейнеры Swing верхнего уровня — такие как JFrame, JDialog и JApplet — это специализированные компоненты, предоставляющие место для отрисовки других Swing-компонентов. Объяснение иерархий содержаний см. в Swing Components and the Containment Hierarchy — разделе The Java Tutorial. Класс JComponent предоставляет:
- Базовый класс для стандартных и пользовательских компонентов, использующих архитектуру Swing.
- «Подключаемый внешний вид» (L&F), который может быть задан программистом или (по желанию) выбран пользователем во время выполнения. Внешний вид каждого компонента предоставляется делегатом UI — объектом, унаследованным от
ComponentUI. Дополнительную информацию см. в How to Set the Look and Feel в The Java Tutorial. - Полное управление обработкой нажатий клавиш. Дополнительную информацию см. в документе How to Use Key Bindings, статье в The Java Tutorial.
- Поддержку всплывающих подсказок — коротких описаний, которые появляются, когда курсор находится над компонентом. Дополнительную информацию см. в How to Use Tool Tips в The Java Tutorial.
- Поддержку доступности.
JComponentсодержит все методы интерфейсаAccessible, но фактически не реализует его. Это ответственность отдельных классов, расширяющихJComponent. - Поддержку свойств, специфичных для компонента. С помощью методов
putClientProperty(java.lang.Object, java.lang.Object)иgetClientProperty(java.lang.Object)вы можете связать пары «имя-объект» с любым объектом, унаследованным отJComponent. - Инфраструктура отрисовки, которая включает двойную буферизацию и поддержку границ. Дополнительную информацию см. в Painting и How to Use Borders, обоих разделах The Java Tutorial.
Swing package description и раздел The Java Tutorial The JComponent Class. JComponent и его подклассы документируют значения по умолчанию для определенных свойств. Например, JTable документирует высоту строки по умолчанию как 16. Каждый подкласс JComponent, имеющий ComponentUI, создает ComponentUI как часть своего конструктора. Для обеспечения конкретного внешнего вида каждый ComponentUI может задавать свойства обратно на JComponent, который его создал. Например, пользовательский внешний вид может потребовать, чтобы JTable имели высоту строки 24. Документированные значения по умолчанию — это значение свойства ДО установки ComponentUI. Если вам нужно конкретное значение для определенного свойства, вы должны задать его явно.
В релизе 1.4 подсистема фокуса была перестроена. Дополнительную информацию см. в How to Use the Focus Subsystem в разделе The Java Tutorial.
Предупреждение: Swing не является потокобезопасным. Дополнительную информацию см. в Политике потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, использующими одну и ту же версию Swing. Начиная с 1.4, добавлена поддержка долгосрочного хранения всех JavaBeans в пакет java.beans. Пожалуйста, см. XMLEncoder.
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
JComponent.AccessibleJComponent |
Внутренний класс JComponent, используемый для предоставления поддержки доступности по умолчанию. |
Вложенные классы/интерфейсы, объявленные в классе java.awt.Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected EventListenerList |
listenerList |
Список слушателей событий для этого компонента. |
static final String |
TOOL_TIP_TEXT_KEY |
Комментарий для отображения при наведении курсора на компонент, также известный как «подсказка значения», «подсказка при наведении» или «метка при наведении». |
protected ComponentUI |
ui |
Делегат внешнего вида для этого компонента. |
static final int |
UNDEFINED_CONDITION |
Константа, используемая некоторыми API для обозначения отсутствия определения условия. |
static final int |
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT |
Константа, используемая для registerKeyboardAction, означающая, что команда должна быть вызвана, когда принимающий компонент является предком фокусированного компонента или сам является фокусированным компонентом. |
static final int |
WHEN_FOCUSED |
Константа, используемая для registerKeyboardAction, означающая, что команда должна быть вызвана, когда компонент имеет фокус. |
static final int |
WHEN_IN_FOCUSED_WINDOW |
Константа, используемая для registerKeyboardAction, означающая, что команда должна быть вызвана, когда принимающий компонент находится в окне, имеющем фокус, или сам является фокусированным компонентом. |
Поля, объявленные в классе 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JComponent() |
Конструктор по умолчанию JComponent. |
Краткое описание методов
| Modifier and Type | Method | Description |
|---|---|---|
void |
addAncestorListener |
Registers listener, so that it will receive AncestorEvents when it or any of its ancestors move or are made visible or invisible. |
void |
addNotify() |
Уведомляет этот компонент о том, что у него теперь есть родительский компонент. |
void |
addVetoableChangeListener |
Добавляет VetoableChangeListener в список слушателей. |
void |
computeVisibleRect |
Возвращает "прямоугольник видимой области" Component — пересечение видимых прямоугольников для этого компонента и всех его предков. |
boolean |
contains |
Предоставляет делегату пользовательского интерфейса возможность определить точную форму этого компонента для обработки щелчка мышью. |
JToolTip |
createToolTip() |
Возвращает экземпляр JToolTip, который следует использовать для отображения всплывающей подсказки. |
void |
disable() |
Устарело. |
void |
enable() |
Устарело. Начиная с версии JDK 1.1, заменено на java.awt.Component.setEnabled(boolean). |
void |
firePropertyChange |
Поддержка отчёта о изменениях связанных свойств для булевых свойств. |
void |
firePropertyChange |
Поддержка отчёта о изменениях связанных свойств для целочисленных свойств. |
protected void |
fireVetoableChange |
Поддержка отчёта о ограниченных изменениях свойств. |
ActionListener |
getActionForKeyStroke |
Возвращает объект, который выполнит действие, зарегистрированное для данной комбинации клавиш. |
final ActionMap |
getActionMap() |
Возвращает ActionMap, используемый для определения, какое Action следует генерировать для конкретной привязки KeyStroke. |
float |
getAlignmentX() |
Переопределяет Container.getAlignmentX, чтобы вернуть горизонтальное выравнивание. |
float |
getAlignmentY() |
Переопределяет Container.getAlignmentY, чтобы вернуть вертикальное выравнивание. |
AncestorListener[] |
getAncestorListeners() |
Возвращает массив всех слушателей предков, зарегистрированных в этом компоненте. |
boolean |
getAutoscrolls() |
Получает свойство autoscrolls. |
int |
getBaseline |
Возвращает базовую линию. |
Component.BaselineResizeBehavior |
getBaselineResizeBehavior() |
Возвращает перечисление, указывающее, как изменяется базовая линия компонента при изменении размера. |
Border |
getBorder() |
Возвращает границу этого компонента или null, если граница в настоящее время не установлена. |
Rectangle |
getBounds |
Сохраняет границы этого компонента в "возвращаемое значение" rv и возвращает rv. |
final Object |
getClientProperty |
Возвращает значение свойства со значением указанного ключа. |
protected Graphics |
getComponentGraphics |
Возвращает объект графики, используемый для рисования этого компонента. |
JPopupMenu |
getComponentPopupMenu() |
Возвращает JPopupMenu, назначенный для этого компонента. |
int |
getConditionForKeyStroke |
Возвращает условие, определяющее, произойдёт ли зарегистрированное действие в ответ на указанную комбинацию клавиш. |
int |
getDebugGraphicsOptions() |
Возвращает состояние отладки графики. |
static Locale |
getDefaultLocale() |
Возвращает локаль по умолчанию, используемую для инициализации свойства locale каждого компонента JComponent при его создании. |
FontMetrics |
getFontMetrics |
Получает FontMetrics для указанного Font. |
Graphics |
getGraphics() |
Возвращает контекст графики этого компонента, позволяющий рисовать на компоненте. |
int |
getHeight() |
Возвращает текущую высоту этого компонента. |
boolean |
getInheritsPopupMenu() |
Возвращает true, если JPopupMenu должен наследоваться от родителя. |
final InputMap |
getInputMap() |
Возвращает InputMap, используемый, когда компонент имеет фокус. |
final InputMap |
getInputMap |
Возвращает InputMap, используемый во время condition. |
InputVerifier |
getInputVerifier() |
Возвращает верификатор ввода для этого компонента. |
Insets |
getInsets() |
Если для этого компонента установлена граница, возвращает отступы границы; в противном случае вызывает super.getInsets. |
Insets |
getInsets |
Возвращает объект Insets, содержащий значения отступов этого компонента. |
<T extends EventListener> |
getListeners |
Возвращает массив всех объектов, в настоящее время зарегистрированных как FooListener для этого JComponent. |
Point |
getLocation |
Сохраняет координаты начала (x, y) этого компонента в "возвращаемое значение" rv и возвращает rv. |
Dimension |
getMaximumSize() |
Если максимальный размер установлен на значение, отличное от null, возвращает его. |
Dimension |
getMinimumSize() |
Если минимальный размер установлен на значение, отличное от null, возвращает его. |
Component |
getNextFocusableComponent() |
Устарело. Начиная с версии 1.4, заменено на FocusTraversalPolicy. |
Point |
getPopupLocation |
Возвращает предпочтительное расположение для отображения всплывающего меню в системе координат этого компонента. |
Dimension |
getPreferredSize() |
Если preferredSize установлен на значение, отличное от null, просто возвращает его. |
KeyStroke[] |
getRegisteredKeyStrokes() |
Возвращает KeyStrokes, который инициирует зарегистрированные действия. |
JRootPane |
getRootPane() |
Возвращает предка JRootPane для данного компонента. |
Dimension |
getSize |
Сохраняет ширину/высоту этого компонента в "возвращаемое значение" rv и возвращает rv. |
Point |
getToolTipLocation |
Возвращает расположение всплывающей подсказки в системе координат этого компонента. |
String |
getToolTipText() |
Возвращает строку всплывающей подсказки, которая была установлена с помощью setToolTipText. |
String |
getToolTipText |
Возвращает строку, используемую в качестве подсказки для события. |
Container |
getTopLevelAncestor() |
Возвращает родительский компонент этого компонента (либо содержащий Window или Applet), или null, если этот компонент не добавлен ни в один контейнер. |
TransferHandler |
getTransferHandler() |
Получает свойство transferHandler. |
ComponentUI |
getUI() |
Возвращает делегата внешнего вида и ощущения, который отрисовывает этот компонент. |
String |
getUIClassID() |
Возвращает ключ UIDefaults, используемый для поиска имени класса swing.plaf.ComponentUI, определяющего внешний вид и ощущения для этого компонента. |
boolean |
getVerifyInputWhenFocusTarget() |
Возвращает значение, указывающее, будет ли вызываться верификатор ввода для текущего владельца фокуса перед тем, как этот компонент запросит фокус. |
VetoableChangeListener[] |
getVetoableChangeListeners() |
Возвращает массив всех слушателей изменений вето, зарегистрированных в этом компоненте. |
Rectangle |
getVisibleRect() |
Возвращает "видимый прямоугольник" компонента Component - пересечение видимого прямоугольника этого компонента, new Rectangle(0, 0, getWidth(), getHeight()) и всех его родительских видимых прямоугольников. |
int |
getWidth() |
Возвращает текущую ширину этого компонента. |
int |
getX() |
Возвращает текущую координату x начала координат компонента. |
int |
getY() |
Возвращает текущую координату y начала координат компонента. |
void |
grabFocus() |
Запрашивает, чтобы этот компонент получил фокус ввода, и что его родительский компонент стал фокусированным окном. |
void |
hide() |
Устарело. |
boolean |
isDoubleBuffered() |
Возвращает, должен ли этот компонент использовать буфер для рисования. |
static boolean |
isLightweightComponent |
Возвращает true, если этот компонент лёгкий, то есть у него нет нативного партнёра в системе окон. |
boolean |
isManagingFocus() |
Устарело. С версии 1.4, заменено на Component.setFocusTraversalKeys(int, Set) и Container.setFocusCycleRoot(boolean). |
boolean |
isOpaque() |
Возвращает true, если этот компонент полностью непрозрачен. |
boolean |
isOptimizedDrawingEnabled() |
Возвращает true, если этот компонент выкладывает своих детей плиткой - то есть, если он может гарантировать, что дети не будут перекрываться. |
final boolean |
isPaintingForPrint() |
Возвращает true, если текущая операция рисования на этом компоненте является частью операции print. |
protected boolean |
isPaintingOrigin() |
Возвращает true, если рисование, вызванное на дочернем компоненте, должно происходить с этого компонента или одного из его предков. |
boolean |
isPaintingTile() |
Возвращает true, если компонент в настоящее время рисует плитку. |
boolean |
isRequestFocusEnabled() |
Возвращает true, если этот JComponent должен получить фокус; в противном случае возвращает false. |
boolean |
isValidateRoot() |
Если этот метод возвращает true, вызовы revalidate потомками этого компонента приведут к валидации всего дерева, начиная с этого корня. |
void |
paint |
Вызывается Swing для рисования компонентов. |
protected void |
paintBorder |
Рисует границу компонента. |
protected void |
paintChildren |
Рисует детей этого компонента. |
protected void |
paintComponent |
Вызывает метод paint делегата пользовательского интерфейса, если делегат пользовательского интерфейса не является null. |
void |
paintImmediately |
Рисует указанную область в этом компоненте и всех его потомках, которые перекрывают область, немедленно. |
void |
paintImmediately |
Рисует указанную область сейчас. |
protected String |
paramString() |
Возвращает строковое представление этого JComponent. |
void |
print |
Вызовите этот метод для печати компонента в указанный Graphics. |
void |
printAll |
Вызовите этот метод для печати компонента. |
protected void |
printBorder |
Печатает границу компонента. |
protected void |
printChildren |
Печатает детей этого компонента. |
protected void |
printComponent |
Вызывается во время операции печати. |
protected void |
processComponentKeyEvent |
Обрабатывает любые события клавиш, которые распознает сам компонент. |
protected boolean |
processKeyBinding |
Вызывается для обработки привязок клавиш для ks в результате KeyEvent e. |
protected void |
processKeyEvent |
Переопределяет processKeyEvent для обработки событий. |
protected void |
processMouseEvent |
Обрабатывает события мыши, происходящие на этом компоненте, передавая их любым зарегистрированным объектам MouseListener, обратитесь к Component.processMouseEvent(MouseEvent) для полного описания этого метода. |
protected void |
processMouseMotionEvent |
Обрабатывает события движения мыши, такие как MouseEvent.MOUSE_DRAGGED. |
final void |
putClientProperty |
Добавляет произвольную пару «свойство клиента»/«значение» к этому компоненту. |
void |
registerKeyboardAction |
Этот метод устарел, пожалуйста, используйте комбинацию getActionMap() и getInputMap() для аналогичного поведения. |
void |
registerKeyboardAction |
Этот метод устарел, пожалуйста, используйте комбинацию getActionMap() и getInputMap() для аналогичного поведения. |
void |
removeAncestorListener |
Удаляет listener, чтобы он больше не получал AncestorEvents. |
void |
removeNotify() |
Уведомляет этот компонент о том, что у него больше нет родительского компонента. |
void |
removeVetoableChangeListener |
Удаляет VetoableChangeListener из списка слушателей. |
void |
repaint |
Добавляет указанную область в список грязных областей, если компонент отображается. |
void |
repaint |
Добавляет указанную область в список грязных областей, если компонент отображается. |
boolean |
requestDefaultFocus() |
Устарело. С версии 1.4, заменено на FocusTraversalPolicy.getDefaultComponent(Container).requestFocus()
|
void |
requestFocus() |
Запрашивает, чтобы этот Component получил фокус ввода. |
boolean |
requestFocus |
Запрашивает, чтобы этот Component получил фокус ввода. |
boolean |
requestFocusInWindow() |
Запрашивает, чтобы этот Component получил фокус ввода. |
protected boolean |
requestFocusInWindow |
Запрашивает, чтобы этот Component получил фокус ввода. |
void |
resetKeyboardActions() |
Удаляет все привязки в первом уровне InputMaps и ActionMap. |
void |
reshape |
Устарело. С версии JDK 5, заменено на Component.setBounds(int, int, int, int). |
void |
revalidate() |
Поддерживает отложенную автоматическую компоновку. |
void |
scrollRectToVisible |
Передает сообщение scrollRectToVisible() родителю JComponent. |
final void |
setActionMap |
Устанавливает ActionMap на am. |
void |
setAlignmentX |
Устанавливает горизонтальное выравнивание. |
void |
setAlignmentY |
Устанавливает вертикальное выравнивание. |
void |
setAutoscrolls |
Устанавливает свойство autoscrolls. |
void |
setBackground |
Устанавливает цвет фона этого компонента. |
void |
setBorder |
Устанавливает границу этого компонента. |
void |
setComponentPopupMenu |
Устанавливает JPopupMenu для этого JComponent. |
void |
setDebugGraphicsOptions |
Включает или отключает диагностическую информацию о каждой операции обработки графики, выполненной внутри компонента или одним из его дочерних элементов. |
static void |
setDefaultLocale |
Устанавливает локаль по умолчанию, используемую для инициализации свойства locale каждого JComponent при создании. |
void |
setDoubleBuffered |
Устанавливает, должен ли этот компонент использовать буфер для рисования. |
void |
setEnabled |
Устанавливает, включен ли этот компонент. |
void |
setFocusTraversalKeys |
Устанавливает клавиши перемещения фокуса для данной операции перемещения для этого компонента. |
void |
setFont |
Устанавливает шрифт для этого компонента. |
void |
setForeground |
Устанавливает цвет переднего плана этого компонента. |
void |
setInheritsPopupMenu |
Устанавливает, будет ли getComponentPopupMenu делегировать родительскому элементу, если этому компоненту не назначено JPopupMenu. |
final void |
setInputMap |
Устанавливает InputMap для использования при условии condition до map. |
void |
setInputVerifier |
Устанавливает верификатор ввода для этого компонента. |
void |
setMaximumSize |
Устанавливает максимальный размер этого компонента в константу. |
void |
setMinimumSize |
Устанавливает минимальный размер этого компонента в константу. |
void |
setNextFocusableComponent |
Устарело. С версии 1.4 заменено на FocusTraversalPolicy
|
void |
setOpaque |
Если true, компонент рисует каждый пиксель в своих границах. |
void |
setPreferredSize |
Устанавливает предпочтительный размер этого компонента. |
void |
setRequestFocusEnabled |
Указывает, должен ли данный JComponent получить фокус. |
void |
setToolTipText |
Регистрирует текст для отображения в всплывающей подсказке. |
void |
setTransferHandler |
Устанавливает TransferHandler, который обеспечивает поддержку передачи данных в и из этого компонента через вырезку/копирование/вставку и перетаскивание. |
protected void |
setUI |
Устанавливает делегата темы внешнего вида для этого компонента. |
void |
setVerifyInputWhenFocusTarget |
Устанавливает значение, указывающее, будет ли вызываться верификатор ввода для текущего владельца фокуса перед тем, как этот компонент запросит фокус. |
void |
setVisible |
Делает компонент видимым или невидимым. |
void |
unregisterKeyboardAction |
Этот метод теперь устарел. |
void |
update |
Вызывает paint. |
void |
updateUI() |
Этот метод вызывается для обновления свойства UI значением из текущей темы внешнего вида. |
Методы, объявленные в классе java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Методы, объявленные в классе java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
Подробное описание полей
ui
protected transient ComponentUI ui
listenerList
protected EventListenerList listenerList
WHEN_FOCUSED
public static final int WHEN_FOCUSED
registerKeyboardAction, что означает, что команда должна быть вызвана, когда компонент имеет фокус.- См. также:
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
public static final int WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
registerKeyboardAction, что означает, что команда должна быть вызвана, когда принимающий компонент является предком компонента с фокусом или сам является компонентом с фокусом.- См. также:
WHEN_IN_FOCUSED_WINDOW
public static final int WHEN_IN_FOCUSED_WINDOW
registerKeyboardAction, что означает, что команда должна быть вызвана, когда принимающий компонент находится в окне с фокусом или сам является компонентом с фокусом.- См. также:
UNDEFINED_CONDITION
public static final int UNDEFINED_CONDITION
- См. также:
TOOL_TIP_TEXT_KEY
public static final String TOOL_TIP_TEXT_KEY
- См. также:
Подробное описание конструкторов
JComponent
public JComponent()
Container. Например, начальный менеджер компоновки является null. Однако он устанавливает свойство локали компонента в значение, возвращаемое JComponent.getDefaultLocale.- См. также:
Подробное описание методов
setInheritsPopupMenu
@BeanProperty(description="Whether or not the JPopupMenu is inherited") public void setInheritsPopupMenu(boolean value)
getComponentPopupMenu делегировать родительскому элементу, если этому компоненту не назначен JPopupMenu. Значение по умолчанию — false, но некоторые подклассы JComponent, реализованные как множество JComponent, могут установить его в true.
Это свойство привязано.
- Параметры:
-
value— наследуется ли JPopupMenu - С:
- 1.5
- См. также:
getInheritsPopupMenu
public boolean getInheritsPopupMenu()
- Возвращает:
- true, если JPopupMenu должен быть унаследован от родителя
- С:
- 1.5
- См. также:
setComponentPopupMenu
@BeanProperty(preferred=true, description="Popup to show") public void setComponentPopupMenu(JPopupMenu popup)
JPopupMenu для этого JComponent. UI отвечает за регистрацию связей и добавление необходимых обработчиков, чтобы JPopupMenu отображался в нужное время. Время отображения JPopupMenu зависит от внешнего вида: некоторые могут отображать его при событии мыши, некоторые могут активировать сочетание клавиш. Если popup равно null, и getInheritsPopupMenu возвращает true, то getComponentPopupMenu будет делегировано родителю. Это предоставляет способ сделать все дочерние компоненты наследниками popupmenu родителя.
Это свойство привязано.
- Параметры:
-
popup— popup, который будет назначен этому компоненту (может быть null) - С:
- 1.5
- См. также:
getComponentPopupMenu
public JPopupMenu getComponentPopupMenu()
JPopupMenu, назначенный для этого компонента. Если этому компоненту не назначен JPopupMenu и getInheritsPopupMenu равно true, это вернёт getParent().getComponentPopupMenu() (при условии, что родительский элемент действителен).- Возвращает:
-
JPopupMenu, назначенный для этого компонента, илиnull, если нет назначенного popup'а - С:
- 1.5
- См. также:
updateUI
public void updateUI()
JComponent должны переопределять этот метод так:
public void updateUI() {
setUI((SliderUI)UIManager.getUI(this);
}
- Требования к реализации:
- Метод по умолчанию ничего не делает.
- См. также:
getUI
public ComponentUI getUI()
- Возвращает:
- объект
ComponentUI, который отрисовывает этот компонент - С:
- 9
setUI
@BeanProperty(hidden=true, visualUpdate=true, description="The component\'s look and feel delegate.") protected void setUI(ComponentUI newUI)
JComponent обычно переопределяют этот метод, чтобы сузить тип аргумента. Например, в JSlider:
public void setUI(SliderUI newUI) {
super.setUI(newUI);
}
Кроме того, подклассы JComponent должны предоставить метод getUI, который возвращает правильный тип. Например:
public SliderUI getUI() {
return (SliderUI)ui;
}
- Параметры:
-
newUI— новый делегат UI - См. также:
getUIClassID
@BeanProperty(bound=false, expert=true, description="UIClassID") public String getUIClassID()
UIDefaults, используемый для поиска имени класса swing.plaf.ComponentUI, который определяет внешний вид для этого компонента. Большинству приложений никогда не потребуется вызывать этот метод. Подклассы JComponent, которые поддерживают подключаемый внешний вид, должны переопределять этот метод, чтобы вернуть ключ UIDefaults, который сопоставляется с подклассом ComponentUI, который определяет их внешний вид.- Возвращает:
- ключ
UIDefaultsдля подклассаComponentUI - См. также:
getComponentGraphics
protected Graphics getComponentGraphics(Graphics g)
DebugGraphics включено, мы создаём новый объект DebugGraphics при необходимости. В противном случае мы просто настраиваем передний план и шрифт указанного объекта графики.- Параметры:
-
g— исходный объектGraphics - Возвращает:
- объект
Graphics, настроенный для этого компонента
paintComponent
protected void paintComponent(Graphics g)
null. Мы передаём делегату копию объекта Graphics для защиты остальной части кода рисования от необратимых изменений (например, Graphics.translate). Если вы переопределяете этот метод в подклассе, вы не должны вносить постоянные изменения в переданный объект Graphics. Например, вы не должны изменять область обрезки Rectangle или изменять преобразование. Если вам нужно выполнить эти операции, вам может быть проще создать новый объект Graphics из переданного объекта Graphics и манипулировать им. Кроме того, если вы не вызываете реализацию родительского класса, вы должны соблюдать свойство opaque, то есть, если этот компонент непрозрачный, вы должны полностью заполнить фон непрозрачным цветом. Если вы не соблюдаете свойство opaque, вы, вероятно, увидите визуальные артефакты.
Переданный объект Graphics может иметь преобразование, отличное от тождественного преобразования, установленного на нём. В этом случае вы можете получить неожиданные результаты, если кумулятивно примените другое преобразование.
- Parameters:
-
g- защищаемый объектGraphics - See Also:
paintChildren
protected void paintChildren(Graphics g)
shouldUseBuffer имеет значение true, ни один родительский компонент не имеет буфера, и дочерние компоненты могут использовать буфер, если у них есть буфер. В противном случае один родительский компонент имеет буфер, который используется в данный момент, и дочерние компоненты не должны использовать буфер для рисования.- Parameters:
-
g- контекстGraphicsдля рисования - See Also:
paintBorder
protected void paintBorder(Graphics g)
Если вы переопределяете этот метод в подклассе, вы не должны вносить постоянные изменения в переданный объект Graphics. Например, вы не должны изменять область обрезки Rectangle или изменять преобразование. Если вам нужно выполнить эти операции, вам может быть проще создать новый объект Graphics из переданного объекта Graphics и манипулировать им.
- Parameters:
-
g- контекстGraphicsдля рисования - See Also:
update
public void update(Graphics g)
paint. Не очищает фон, но см. ComponentUI.update, который вызывается paintComponent.- Overrides:
-
updateв классеContainer - Parameters:
-
g- контекстGraphicsдля рисования - See Also:
paint
public void paint(Graphics g)
paint напрямую, а вместо этого должны использовать метод repaint для планирования перерисовки компонента. Этот метод фактически делегирует работу рисования трём защищённым методам: paintComponent, paintBorder и paintChildren. Они вызываются в указанном порядке, чтобы гарантировать, что дочерние элементы отображаются поверх самого компонента. Как правило, компонент и его дочерние элементы не должны рисовать в области отступов, выделенной для границы. Подклассы могут просто переопределить этот метод, как всегда. Подкласс, который просто хочет специализировать делегата UI (внешний вид), метод paint должен просто переопределить метод paintComponent.
- Overrides:
-
paintв классеContainer - Parameters:
-
g- контекстGraphicsдля рисования - See Also:
printAll
public void printAll(Graphics g)
print для компонента.- Overrides:
-
printAllв классеComponent - Parameters:
-
g- контекстGraphicsдля рисования - See Also:
public void print(Graphics g)
Graphics. Этот метод приведёт к вызовам printComponent, printBorder и printChildren. Рекомендуется переопределить один из перечисленных методов, а не этот, если вы хотите настроить внешний вид печати. Однако, может быть полезно переопределить этот метод, если вы хотите подготовить состояние перед вызовом поведения родительского класса. Например, если вы хотели изменить цвет фона компонента перед печатью, вы можете сделать следующее:
public void print(Graphics g) {
Color orig = getBackground();
setBackground(Color.WHITE);
// wrap in try/finally so that we always restore the state
try {
super.print(g);
} finally {
setBackground(orig);
}
}
В качестве альтернативы, или для компонентов, делегирующих рисование другим объектам, вы можете запросить во время рисования, выполняется ли операция печати. Метод isPaintingForPrint предоставляет эту возможность, и его значение возврата будет изменено этим методом: на true непосредственно перед рендерингом и на false сразу после него. При каждом изменении генерируется событие изменения свойства для этого компонента с именем "paintingForPrint".
Этот метод устанавливает состояние компонента таким образом, что двойной буфер не будет использоваться: рисование будет выполняться непосредственно на переданный Graphics.
- Overrides:
-
printв классеContainer - Parameters:
-
g- контекстGraphicsдля рисования - See Also:
printComponent
protected void printComponent(Graphics g)
paintComponent на компоненте. Переопределите этот метод, если хотите добавить специальное поведение рисования при печати.- Parameters:
-
g- контекстGraphicsдля рисования - Since:
- 1.3
- See Also:
printChildren
protected void printChildren(Graphics g)
paintChildren на компоненте. Переопределите этот метод, если хотите распечатать дочерние элементы по-другому, чем при рисовании.- Parameters:
-
g- контекстGraphicsдля рисования - Since:
- 1.3
- See Also:
printBorder
protected void printBorder(Graphics g)
paintBorder на компоненте. Переопределите этот метод, если хотите распечатать границу по-другому, чем она рисуется.- Parameters:
-
g- контекстGraphicsдля рисования - Since:
- 1.3
- See Also:
isPaintingTile
@BeanProperty(bound=false) public boolean isPaintingTile()
- Returns:
- true, если компонент в настоящее время рисует плитку, в противном случае false
isPaintingForPrint
@BeanProperty(bound=false) public final boolean isPaintingForPrint()
true, если текущая операция рисования на этом компоненте является частью операции print. Этот метод полезен, когда вы хотите настроить то, что вы печатаете, по сравнению с тем, что вы показываете на экране. Вы можете обнаруживать изменения в значении этого свойства, прослушивая события изменения свойств этого компонента с именем "paintingForPrint".
Примечание: Этот метод предоставляет дополнительную функциональность к той, что предоставляется другими высокоуровневыми API для печати Swing. Однако он строго обрабатывает рисование и не должен интерпретироваться как предоставление информации о процессах печати более высокого уровня. Например, операция JTable.print() не обязательно приводит к непрерывному отрисовке всего компонента, и значение возвращаемого методом значения может меняться несколько раз во время этой операции. Даже возможно, что компонент будет нарисован на экране, пока процесс печати продолжается. В таком случае значение возвращаемого методом значения является true только тогда, когда таблица рисуется как часть процесса печати.
- Возвращает:
- true, если текущая операция рисования на этом компоненте является частью операции печати
- С:
- 1.6
- См. также:
isManagingFocus
@Deprecated @BeanProperty(bound=false) public boolean isManagingFocus()
Component.setFocusTraversalKeys(int, Set) и Container.setFocusCycleRoot(boolean). Изменяет клавиши перемещения фокуса этого JComponent на CTRL+TAB и CTRL+SHIFT+TAB. Также предотвращает SortingFocusTraversalPolicy от рассмотрения потомков этого JComponent при вычислении цикла перемещения фокуса.
- Возвращает:
- false
- См. также:
setNextFocusableComponent
@Deprecated public void setNextFocusableComponent(Component aComponent)
FocusTraversalPolicy
Переопределяет стандартный FocusTraversalPolicy для цикла перемещения фокуса этого JComponent, безусловно, устанавливая указанный Component в качестве следующего Component в цикле, и этот JComponent в качестве предыдущего Component указанного Component в цикле.
- Параметры:
-
aComponent-Component, который должен следовать за этимJComponentв цикле перемещения фокуса - См. также:
getNextFocusableComponent
@Deprecated public Component getNextFocusableComponent()
FocusTraversalPolicy. Возвращает Component, установленный предыдущим вызовом setNextFocusableComponent(Component) на этом JComponent.
- Возвращает:
Component, который будет следовать за этимJComponentв цикле перемещения фокуса, илиnull, если явно не был указан- См. также:
setRequestFocusEnabled
public void setRequestFocusEnabled(boolean requestFocusEnabled)
JComponent получить фокус. Это всего лишь подсказка, и потребители, запрашивающие фокус, должны учитывать это свойство. Как правило, это учитывается для операций с мышью, но не для операций с клавиатурой. Например, виджеты могут проверить это свойство на истинность перед запросом фокуса во время операции с мышью. Это часто используется, если вы не хотите, чтобы нажатие мыши на JComponent крало фокус, но хотели, чтобы JComponent можно было перемещаться с помощью клавиатуры. Если вы не хотите, чтобы этот JComponent был фокусируемым вообще, используйте метод setFocusable. Подробнее см. Руководстве по использованию подсистемы фокуса в учебнике Java.
- Параметры:
-
requestFocusEnabled- указывает, хотите ли вы, чтобы этотJComponentбыл фокусируемым - См. также:
isRequestFocusEnabled
public boolean isRequestFocusEnabled()
true, если этот JComponent должен получить фокус; в противном случае возвращает false. Подробнее см. Руководстве по использованию подсистемы фокуса в учебнике Java.
- Возвращает:
-
true, если этот компонент должен получить фокус, в противном случае возвращаетfalse - См. также:
requestFocus
public void requestFocus()
Component получил фокус ввода. См. Component.requestFocus() для полного описания этого метода. Обратите внимание, что использование этого метода не рекомендуется, поскольку его поведение зависит от платформы. Вместо этого рекомендуется использовать requestFocusInWindow(). Для получения дополнительной информации о фокусе, см. Руководстве по использованию подсистемы фокуса в учебнике Java.
- Переопределяет:
-
requestFocusв классеComponent - С:
- 1.4
- См. также:
requestFocus
public boolean requestFocus(boolean temporary)
Component получил фокус ввода. См. Component.requestFocus(boolean) для полного описания этого метода. Обратите внимание, что использование этого метода не рекомендуется, поскольку его поведение зависит от платформы. Вместо этого рекомендуется использовать requestFocusInWindow(boolean). Для получения дополнительной информации о фокусе, см. Руководстве по использованию подсистемы фокуса в учебнике Java.
- Переопределяет:
-
requestFocusв классеComponent - Параметры:
-
temporary- boolean, указывающий, является ли изменение фокуса временным - Возвращает:
-
false, если запрос на изменение фокуса гарантированно завершится неудачно;true, если он, скорее всего, завершится успешно - С:
- 1.4
- См. также:
requestFocusInWindow
public boolean requestFocusInWindow()
Component получил фокус ввода. См. Component.requestFocusInWindow() для полного описания этого метода. Для получения дополнительной информации о фокусе, см. Руководстве по использованию подсистемы фокуса в учебнике Java.
- Переопределяет:
-
requestFocusInWindowв классеComponent - Возвращает:
-
false, если запрос на изменение фокуса гарантированно завершится неудачно;true, если он, скорее всего, завершится успешно - С:
- 1.4
- См. также:
requestFocusInWindow
protected boolean requestFocusInWindow(boolean temporary)
Component получил фокус ввода. Обратитесь к Component.requestFocusInWindow(boolean) для полного описания этого метода. Если вам нужна дополнительная информация о фокусе, см. Как использовать подсистему фокуса, раздел в учебнике Java.
- Overrides:
-
requestFocusInWindowв классеComponent - Parameters:
-
temporary— логическое значение, указывающее, является ли изменение фокуса временным - Returns:
-
false, если запрос на изменение фокуса гарантированно завершится неудачей;true, если он, вероятно, завершится успешно - Since:
- 1.4
- See Also:
grabFocus
public void grabFocus()
Этот метод предназначен для использования реализациями фокуса. Клиентский код не должен использовать этот метод; вместо этого он должен использовать requestFocusInWindow().
- See Also:
setVerifyInputWhenFocusTarget
@BeanProperty(description="Whether the Component verifies input before accepting focus.") public void setVerifyInputWhenFocusTarget(boolean verifyInputWhenFocusTarget)
- Parameters:
-
verifyInputWhenFocusTarget— значение для свойстваverifyInputWhenFocusTarget - Since:
- 1.3
- See Also:
getVerifyInputWhenFocusTarget
public boolean getVerifyInputWhenFocusTarget()
- Returns:
- значение свойства
verifyInputWhenFocusTarget - Since:
- 1.3
- See Also:
getFontMetrics
public FontMetrics getFontMetrics(Font font)
FontMetrics для указанного Font.- Overrides:
-
getFontMetricsв классеComponent - Parameters:
-
font— шрифт, для которого требуется получить метрики шрифта - Returns:
- метрики шрифта для
font - Throws:
-
NullPointerException— еслиfontравен null - Since:
- 1.5
- See Also:
-
Component.getFont()ComponentPeer.getFontMetrics(Font)Toolkit.getFontMetrics(Font)
setPreferredSize
@BeanProperty(preferred=true, description="The preferred size of the component.") public void setPreferredSize(Dimension preferredSize)
preferredSize равен null, UI запросит предпочтительный размер.- Overrides:
-
setPreferredSizeв классеComponent - Parameters:
-
preferredSize— новый предпочтительный размер или null - See Also:
getPreferredSize
public Dimension getPreferredSize()
preferredSize был установлен на значение, отличное от null, то просто возвращает его. Если метод getPreferredSize делегата UI возвращает значение, отличное от null, то возвращает это значение; в противном случае обращается к менеджеру компоновки компонента.- Overrides:
-
getPreferredSizeв классеContainer - Returns:
- значение свойства
preferredSize - See Also:
setMaximumSize
@BeanProperty(description="The maximum size of the component.") public void setMaximumSize(Dimension maximumSize)
getMaximumSize всегда возвращают это значение; UI компонента не будет запрашивать его вычисление. Установка максимального размера на null восстанавливает стандартное поведение.- Overrides:
-
setMaximumSizeв классеComponent - Parameters:
-
maximumSize—Dimension, содержащий желаемый максимальный разрешенный размер - See Also:
getMaximumSize
public Dimension getMaximumSize()
null, то просто возвращает его. Если метод getMaximumSize делегата UI возвращает значение, отличное от null, то возвращает это значение; в противном случае обращается к менеджеру компоновки компонента.- Overrides:
-
getMaximumSizeв классеContainer - Returns:
- значение свойства
maximumSize - See Also:
setMinimumSize
@BeanProperty(description="The minimum size of the component.") public void setMinimumSize(Dimension minimumSize)
getMinimumSize всегда возвращают это значение; UI компонента не будет запрашивать его вычисление. Установка минимального размера на null восстанавливает стандартное поведение.- Overrides:
-
setMinimumSizeв классеComponent - Parameters:
-
minimumSize— новый минимальный размер этого компонента - See Also:
getMinimumSize
public Dimension getMinimumSize()
null, то просто возвращает его. Если метод getMinimumSize делегата UI возвращает значение, отличное от null, то возвращает это значение; в противном случае обращается к менеджеру компоновки компонента.- Overrides:
-
getMinimumSizeв классеContainer - Returns:
- значение свойства
minimumSize - See Also:
contains
public boolean contains(int x, int y)
- Overrides:
-
containsв классеComponent - Parameters:
-
x— координата x точки -
y— координата y точки - Returns:
- true, если этот компонент логически содержит x,y
- See Also:
setBorder
@BeanProperty(preferred=true, visualUpdate=true, description="The component\'s border.") public void setBorder(Border border)
Border отвечает за определение отступов для компонента (переопределяя любые отступы, установленные непосредственно на компоненте) и за необязательную отрисовку декораций границы в пределах этих отступов. Границы следует использовать (вместо отступов) для создания как декоративных, так и не декоративных (таких как отступы и отступы) областей для компонента Swing. Сложные границы могут использоваться для вложения нескольких границ в один компонент. Хотя технически вы можете установить границу на любой объект, унаследованный от JComponent, реализация внешнего вида многих стандартных компонентов Swing не работает хорошо с границами, установленными пользователем. В общем случае, когда вы хотите установить границу на стандартный компонент Swing, кроме JPanel или JLabel, мы рекомендуем поместить компонент в JPanel и установить границу на JPanel.
Это связанное свойство.
- Parameters:
-
border- граница, которая должна быть отображена для этого компонента - See Also:
getBorder
public Border getBorder()
null, если граница в настоящее время не установлена.- Returns:
- объект границы для этого компонента
- See Also:
getInsets
@BeanProperty(expert=true) public Insets getInsets()
super.getInsets.- Overrides:
-
getInsetsв классеContainer - Returns:
- значение свойства отступов
- See Also:
getInsets
public Insets getInsets(Insets insets)
Insets, содержащий значения отступов этого компонента. Переданный объект Insets будет повторно использован, если это возможно. Однако вызывающие методы не могут предполагать, что будет возвращен тот же объект. Все существующие значения в этом объекте перезаписываются. Если insets равен null, новый будет выделен.- Parameters:
-
insets- объектInsets, который может быть повторно использован - Returns:
- объект
Insets - See Also:
getAlignmentY
public float getAlignmentY()
Container.getAlignmentY для возвращения вертикального выравнивания.- Overrides:
-
getAlignmentYв классеContainer - Returns:
- значение свойства
alignmentY - See Also:
setAlignmentY
@BeanProperty(description="The preferred vertical alignment of the component.") public void setAlignmentY(float alignmentY)
- Parameters:
-
alignmentY- новое вертикальное выравнивание - See Also:
getAlignmentX
public float getAlignmentX()
Container.getAlignmentX для возвращения горизонтального выравнивания.- Overrides:
-
getAlignmentXв классеContainer - Returns:
- значение свойства
alignmentX - See Also:
setAlignmentX
@BeanProperty(description="The preferred horizontal alignment of the component.") public void setAlignmentX(float alignmentX)
- Parameters:
-
alignmentX- новое горизонтальное выравнивание - See Also:
setInputVerifier
@BeanProperty(description="The component\'s input verifier.") public void setInputVerifier(InputVerifier inputVerifier)
- Parameters:
-
inputVerifier- новый верификатор ввода - Since:
- 1.3
- See Also:
getInputVerifier
public InputVerifier getInputVerifier()
- Returns:
- свойство
inputVerifier - Since:
- 1.3
- See Also:
getGraphics
@BeanProperty(bound=false) public Graphics getGraphics()
Graphics, а затем вызывайте операции на этом объекте для рисования на компоненте.- Overrides:
-
getGraphicsв классеComponent - Returns:
- контекст графики этого компонента
- See Also:
setDebugGraphicsOptions
@BeanProperty(bound=false, preferred=true, enumerationValues={"DebugGraphics.NONE_OPTION","DebugGraphics.LOG_OPTION","DebugGraphics.FLASH_OPTION","DebugGraphics.BUFFERED_OPTION"}, description="Diagnostic options for graphics operations.") public void setDebugGraphicsOptions(int debugOptions) - Parameters:
-
debugOptions- определяет, как компонент должен отображать информацию; один из следующих вариантов:- DebugGraphics.LOG_OPTION - вызывает вывод текстового сообщения.
- DebugGraphics.FLASH_OPTION - вызывает несколько вспышек отрисовки.
- DebugGraphics.BUFFERED_OPTION - создает
ExternalWindow, отображающий операции, выполненные на offscreen буфере View. - DebugGraphics.NONE_OPTION отключает отладку.
- Значение 0 не вносит изменений в параметры отладки.
debugOptionsпобитово ИЛИ'ится в текущее значение
getDebugGraphicsOptions
public int getDebugGraphicsOptions()
- Returns:
- побитово ИЛИ'енный флаг нуля или более следующих вариантов:
- DebugGraphics.LOG_OPTION - вызывает вывод текстового сообщения.
- DebugGraphics.FLASH_OPTION - вызывает несколько вспышек отрисовки.
- DebugGraphics.BUFFERED_OPTION - создает
ExternalWindow, отображающий операции, выполненные на offscreen буфере View. - DebugGraphics.NONE_OPTION отключает отладку.
- Значение 0 не вносит изменений в параметры отладки.
- See Also:
registerKeyboardAction
public void registerKeyboardAction(ActionListener anAction, String aCommand, KeyStroke aKeyStroke, int aCondition)
getActionMap() и getInputMap() для достижения аналогичного поведения. Например, для привязки KeyStroke aKeyStroke к Action anAction используйте теперь: component.getInputMap().put(aKeyStroke, aCommand); component.getActionMap().put(aCommmand, anAction);. Вышеприведенное предположение предполагает, что вы хотите, чтобы привязка применялась для
WHEN_FOCUSED. Для регистрации привязок для других состояний фокуса используйте метод getInputMap, который принимает целое число. Регистрирует новое действие с помощью клавиатуры. anAction будет вызвано, если произойдет событие нажатия клавиши, соответствующее aKeyStroke, и aCondition будет проверено. Объект KeyStroke определяет определённую комбинацию клавиши на клавиатуре и одного или нескольких модификаторов (alt, shift, ctrl, meta).
aCommand будет установлено в доставленном событии, если указано.
aCondition может быть одним из следующих:
- WHEN_FOCUSED
- Действие будет вызвано только тогда, когда нажатие клавиши происходит, когда компонент имеет фокус.
- WHEN_IN_FOCUSED_WINDOW
- Действие будет вызвано, когда нажатие клавиши происходит, когда компонент имеет фокус или если компонент находится в окне, имеющем фокус. Обратите внимание, что компонент не обязательно должен быть непосредственным потомком окна — он может находиться в любой части иерархии контейнеров окна. Другими словами, всякий раз, когда любой компонент в окне имеет фокус, вызывается действие, зарегистрированное с этим компонентом.
- WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
- Действие будет вызвано, когда нажатие клавиши происходит, когда компонент имеет фокус или если компонент является предком компонента, который имеет фокус.
Комбинация нажатий клавиш и условий позволяет определять события действий высокого уровня (семантические) для заданной комбинации нажатия клавиши + модификатора (используя класс KeyStroke) и направлять их родителю или потомку компонента, имеющего фокус, или самому компоненту. Другими словами, в любой иерархической структуре компонентов произвольная комбинация клавиш может быть немедленно направлена к соответствующему компоненту в иерархии и вызвать конкретный метод (обычно посредством адаптерных объектов).
Если для контейнера-получателя уже зарегистрировано действие с тем же значением charCode и теми же модификаторами, anAction заменит это действие.
- Parameters:
-
anAction- регистрируемоеAction -
aCommand- команда, которая будет установлена в доставленном событии -
aKeyStroke-KeyStroke, которое будет привязано к действию -
aCondition- условие, которое должно быть выполнено, см. выше - See Also:
registerKeyboardAction
public void registerKeyboardAction(ActionListener anAction, KeyStroke aKeyStroke, int aCondition)
getActionMap() и getInputMap() для достижения аналогичного поведения.- Parameters:
-
anAction- действие, которое будет зарегистрировано для данной комбинации клавиш и условия -
aKeyStroke- aKeyStroke -
aCondition- условие, которое должно быть связано с данной комбинацией клавиш и действием - See Also:
unregisterKeyboardAction
public void unregisterKeyboardAction(KeyStroke aKeyStroke)
ActionMap/InputMap, либо разместить фиктивную привязку в InputMap. Удаление привязки из InputMap позволяет привязка родительских InputMap оставаться активными, а размещение фиктивной привязки в InputMap эффективно отключает привязку. Отменяет действие с клавиатуры. Это удалит привязку из ActionMap (если она существует), а также из InputMap.
- Parameters:
-
aKeyStroke- комбинация клавиш, для которой необходимо отменить действие с клавиатуры
getRegisteredKeyStrokes
@BeanProperty(bound=false) public KeyStroke[] getRegisteredKeyStrokes()
KeyStrokes, которые инициируют зарегистрированные действия.- Returns:
- массив объектов
KeyStroke - See Also:
getConditionForKeyStroke
public int getConditionForKeyStroke(KeyStroke aKeyStroke)
Для платформы Java 2 v1.3, KeyStroke может быть связано с более чем одним условием. Например, 'a' может быть привязан к двум условиям WHEN_FOCUSED и WHEN_IN_FOCUSED_WINDOW.
- Parameters:
-
aKeyStroke- комбинация клавиш, для которой требуется получить условие действия-комбинации клавиш - Returns:
- условие действия-комбинации клавиш
getActionForKeyStroke
public ActionListener getActionForKeyStroke(KeyStroke aKeyStroke)
- Parameters:
-
aKeyStroke- комбинация клавиш, для которой требуется вернуть слушателя - Returns:
- объект
ActionListener, который вызывается при нажатии клавиш
resetKeyboardActions
public void resetKeyboardActions()
InputMaps и ActionMap. Это приводит к удалению локальных привязок и сохранению привязок, определенных в родительских InputMap/ActionMaps (интерфейс обычно определяется на втором уровне).setInputMap
public final void setInputMap(int condition, InputMap map)
InputMap для использования в условиях condition до map. Значение null подразумевает, что вы не хотите использовать никакие привязки, даже из интерфейса. Это не переустановит интерфейсный InputMap (если он был). condition имеет одно из следующих значений:
-
WHEN_IN_FOCUSED_WINDOW -
WHEN_FOCUSED -
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
condition равно WHEN_IN_FOCUSED_WINDOW и map не является экземпляром ComponentInputMap, будет выброшено исключение IllegalArgumentException. Аналогично, если condition не является одним из указанных значений, будет выброшено исключение IllegalArgumentException.- Parameters:
-
condition- одно из перечисленных значений -
map-InputMapдля использования в данном условии - Throws:
-
IllegalArgumentException- еслиconditionравноWHEN_IN_FOCUSED_WINDOW, аmapне является экземпляромComponentInputMap; или еслиconditionне является одним из допустимых значений, указанных выше - Since:
- 1.3
getInputMap
public final InputMap getInputMap(int condition)
InputMap, используемый во время condition.- Parameters:
-
condition- одно из значений WHEN_IN_FOCUSED_WINDOW, WHEN_FOCUSED, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT - Returns:
InputMapдля указанногоcondition- Since:
- 1.3
getInputMap
public final InputMap getInputMap()
InputMap, используемый, когда компонент имеет фокус. Это удобный метод для getInputMap(WHEN_FOCUSED).- Returns:
InputMap, используемый, когда компонент имеет фокус- Since:
- 1.3
setActionMap
public final void setActionMap(ActionMap am)
ActionMap на am. Это не устанавливает родителя am как ActionMap из интерфейса (если он был), это ответственность вызывающего кода.- Parameters:
-
am- новое значениеActionMap - Since:
- 1.3
getActionMap
public final ActionMap getActionMap()
ActionMap, используемый для определения, какое Action следует запустить для конкретной KeyStroke привязки. Возвращённый ActionMap, если не указано иное, будет иметь ActionMap из интерфейса в качестве родителя.- Returns:
ActionMap, содержащий привязки ключ/действие- Since:
- 1.3
getBaseline
public int getBaseline(int width, int height)
LayoutManager для выравнивания компонентов вдоль своей линии основания. Значение, меньшее 0, указывает, что у этого компонента нет разумной линии основания, и что LayoutManager не должны выравнивать этот компонент по своей линии основания. Этот метод вызывает метод ComponentUI с тем же именем. Если у этого компонента нет линии основания, будет возвращено -1. Если возвращается значение >= 0, то компонент имеет корректную линию основания для любого размера >= минимального размера, и getBaselineResizeBehavior можно использовать для определения того, как линия основания изменяется при изменении размера.
- Overrides:
-
getBaselineв классеComponent - Параметры:
-
width- ширина для получения линии основания -
height- высота для получения линии основания - Возвращает:
- линию основания или < 0, если разумная линия основания отсутствует
- Исключения:
-
IllegalArgumentException- если ширина или высота < 0 - С момента:
- 1.6
- См. также:
getBaselineResizeBehavior
@BeanProperty(bound=false) public Component.BaselineResizeBehavior getBaselineResizeBehavior()
Этот метод вызывает метод ComponentUI с тем же именем. Если у этого компонента нет линии основания, будет возвращено ComponentUI BaselineResizeBehavior.OTHER. Подклассы никогда не должны возвращать null; если линия основания не может быть вычислена, возвращается BaselineResizeBehavior.OTHER. Вызывающие объекты должны сначала запросить линию основания с помощью getBaseline, и если возвращено значение >= 0, использовать этот метод. Допустимо, что этот метод возвращает значение отличное от BaselineResizeBehavior.OTHER, даже если getBaseline возвращает значение меньше 0.
- Overrides:
-
getBaselineResizeBehaviorв классеComponent - Возвращает:
- перечисление, указывающее, как изменяется линия основания при изменении размера компонента
- С момента:
- 1.6
- См. также:
requestDefaultFocus
@Deprecated public boolean requestDefaultFocus()
FocusTraversalPolicy.getDefaultComponent(Container).requestFocus()
Запрашивает фокус на этом JComponent в соответствии с FocusTraversalPolicy по умолчанию Component. Если этот JComponent является корнем цикла фокуса, используется его FocusTraversalPolicy. В противном случае используется FocusTraversalPolicy предка этого JComponent в цикле фокуса.
- Возвращает:
- true, если этот компонент может запросить фокус, false — если нет
- См. также:
setVisible
@BeanProperty(hidden=true, visualUpdate=true) public void setVisible(boolean aFlag)
Component.setVisible.- Overrides:
-
setVisibleв классеComponent - Параметры:
-
aFlag- true для отображения компонента; false для его скрытия - См. также:
setEnabled
@BeanProperty(expert=true, preferred=true, visualUpdate=true, description="The enabled state of the component.") public void setEnabled(boolean enabled)
Примечание: Отключение компонента не отключает его дочерние элементы.
Примечание: Отключение лёгкого компонента не препятствует получению им MouseEvents.
- Overrides:
-
setEnabledв классеComponent - Параметры:
-
enabled- true, если этот компонент должен быть включен, false в противном случае - См. также:
setForeground
@BeanProperty(preferred=true, visualUpdate=true, description="The foreground color of the component.") public void setForeground(Color fg)
- Overrides:
-
setForegroundв классеComponent - Параметры:
-
fg- желаемый цвет переднего планаColor - См. также:
setBackground
@BeanProperty(preferred=true, visualUpdate=true, description="The background color of the component.") public void setBackground(Color bg)
JComponent или ComponentUI. Прямые подклассы JComponent должны переопределить paintComponent, чтобы учесть это свойство. Виджет может игнорировать это свойство.
- Overrides:
-
setBackgroundв классеComponent - Параметры:
-
bg- желаемый цвет фонаColor - См. также:
setFont
@BeanProperty(preferred=true, visualUpdate=true, description="The font for the component.") public void setFont(Font font)
- Overrides:
-
setFontв классеContainer - Параметры:
-
font- желаемыйFontдля этого компонента - См. также:
getDefaultLocale
public static Locale getDefaultLocale()
- Возвращает:
- локаль по умолчанию.
- С момента:
- 1.4
- См. также:
setDefaultLocale
public static void setDefaultLocale(Locale l)
null сбросит текущую локаль обратно к локали по умолчанию виртуальной машины.- Параметры:
-
l- желаемая локаль по умолчанию для новых компонентов. - С момента:
- 1.4
- См. также:
processComponentKeyEvent
protected void processComponentKeyEvent(KeyEvent e)
Этот метод реализован как ничего не делающий. Подклассы обычно переопределяют этот метод, если они обрабатывают какие-либо события нажатия клавиш самостоятельно. Если событие обрабатывается, оно должно быть поглощено.
- Параметры:
-
e- событие для обработки
Обработка события нажатия клавиши
protected void processKeyEvent(KeyEvent e)
processKeyEvent для обработки событий.- Overrides:
-
processKeyEventв классеComponent - Параметры:
-
e- событие нажатия клавиши - См. также:
Обработка привязки к клавише
protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed)
ks в результате KeyEvent e. Это позволяет получить соответствующую InputMap, получить привязку, получить действие из ActionMap, а затем (если действие найдено и компонент активен) вызвать notifyAction для уведомления об этом действии.- Параметры:
-
ks- запрос наKeyStroke -
e- событие нажатияKeyEvent -
condition- одно из следующих значений:- JComponent.WHEN_FOCUSED
- JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT
- JComponent.WHEN_IN_FOCUSED_WINDOW
-
pressed- true, если клавиша нажата - Возвращает:
- true, если была привязка к действию, и действие было активировано
- С:
- 1.3
Установить подсказку
@BeanProperty(bound=false, preferred=true, description="The text to display in a tool tip.") public void setToolTipText(String text)
См. Как использовать подсказки в Руководстве по Java для получения дополнительной информации.
- Параметры:
-
text- строка для отображения; если текстnull, подсказка отключается для этого компонента - См. также:
Получить текст подсказки
public String getToolTipText()
setToolTipText.- Возвращает:
- текст подсказки
- См. также:
Получить текст подсказки
public String getToolTipText(MouseEvent event)
setToolTipText. Если компонент предоставляет более расширенный API для поддержки различных подсказок в разных местах, этот метод должен быть переопределен.- Параметры:
-
event-MouseEvent, инициировавший отображениеToolTip - Возвращает:
- строка, содержащая подсказку
Получить местоположение подсказки
public Point getToolTipLocation(MouseEvent event)
null, Swing выберет местоположение. Реализация по умолчанию возвращает null.- Параметры:
-
event-MouseEvent, вызвавший отображение подсказкиToolTipManager - Возвращает:
- всегда возвращает
null
Получить местоположение всплывающего меню
public Point getPopupLocation(MouseEvent event)
null, вид и ощущения выберут подходящее местоположение.- Параметры:
-
event-MouseEvent, вызвавший отображение всплывающего меню, илиnull, если всплывающее меню не отображается в результате события мыши - Возвращает:
- местоположение для отображения
JPopupMenu, илиnull - С:
- 1.5
Создать подсказку
public JToolTip createToolTip()
JToolTip, который должен использоваться для отображения подсказки. Компоненты обычно не переопределяют этот метод, но его можно использовать для отображения различных подсказок по-разному.- Возвращает:
JToolTip, используемый для отображения этой подсказки
Прокрутить прямоугольник до видимости
public void scrollRectToVisible(Rectangle aRect)
scrollRectToVisible() родительскому элементу JComponent. Компоненты, которые могут обрабатывать запрос, такие как JViewport, переопределяют этот метод и выполняют прокрутку.- Параметры:
-
aRect- видимыйRectangle - См. также:
Установить автоматическую прокрутку
@BeanProperty(bound=false, expert=true, description="Determines if this component automatically scrolls its contents when dragged.") public void setAutoscrolls(boolean autoscrolls)
autoscrolls. Если true, события перетаскивания мыши будут генерироваться искусственно, когда курсор мыши переходит за пределы границ компонента и движение мыши приостанавливается (в то время как кнопка продолжает удерживаться). Искусственные события позволяют отображать, что движение курсора возобновилось в направлении, установленным при пересечении границ компонента. Компоненты, поддерживающие автоматическую прокрутку, должны обрабатывать события перетаскивания мыши, вызывая scrollRectToVisible с прямоугольником, содержащим расположение события мыши. Все Swing-компоненты, которые поддерживают выбор элементов и обычно отображаются в JScrollPane (JTable, JList, JTree, JTextArea и JEditorPane) уже обрабатывают события перетаскивания мыши таким образом. Чтобы включить автоматическую прокрутку в любой другой компонент, добавьте обработчик движения мыши, который вызывает scrollRectToVisible. Например, для JPanel, myPanel:
MouseMotionListener doScrollRectToVisible = new MouseMotionAdapter() {
public void mouseDragged(MouseEvent e) {
Rectangle r = new Rectangle(e.getX(), e.getY(), 1, 1);
((JPanel)e.getSource()).scrollRectToVisible(r);
}
};
myPanel.addMouseMotionListener(doScrollRectToVisible);
Значение свойства autoScrolls по умолчанию равно false.- Параметры:
-
autoscrolls- если true, генерируются искусственные события перетаскивания мыши при перетаскивании мыши за пределы границ компонента и удерживании кнопки мыши; в противном случае false - См. также:
Получить автоматическую прокрутку
public boolean getAutoscrolls()
autoscrolls.- Возвращает:
- значение свойства
autoscrolls - См. также:
Установить обработчик передачи данных
@BeanProperty(hidden=true, description="Mechanism for transfer of data to and from the component") public void setTransferHandler(TransferHandler newHandler)
TransferHandler, который обеспечивает поддержку передачи данных в и из этого компонента с помощью функций "Вырезать/Копировать/Вставить" и перетаскивания. Может быть null, если компонент не поддерживает операции передачи данных. Если новый TransferHandler не null, этот метод также устанавливает новый DropTarget на компонент для активации обработки опускания через TransferHandler и активации любой встроенной поддержки (такой как вычисление и отображение потенциальных мест опускания). Если вы не хотите, чтобы этот компонент реагировал каким-либо образом на опускание, вы можете полностью отключить поддержку опускания, удалив целевой объект опускания (setDropTarget(null)) или деактивировав его (getDropTaget().setActive(false)).
Если новый TransferHandler null, этот метод удаляет целевой объект опускания.
В двух случаях этот метод не изменяет целевой объект опускания: во-первых, если существующий целевой объект опускания на этом компоненте был явно задан разработчиком как non-null. Во-вторых, если системная переменная suppressSwingDropSupport равна true. Значение по умолчанию для системной переменной - false.
Дополнительную информацию см. в разделе Как использовать перетаскивание и передачу данных в Руководстве по Java.
- Параметры:
-
newHandler- новыйTransferHandler - С:
- 1.4
- См. также:
getTransferHandler
public TransferHandler getTransferHandler()
transferHandler.- Возвращает:
- значение свойства
transferHandler - С:
- 1.4
- См. также:
processMouseEvent
protected void processMouseEvent(MouseEvent e)
MouseListener. См. Component.processMouseEvent(MouseEvent) для полного описания этого метода.- Переопределяет:
-
processMouseEventв классеComponent - Параметры:
-
e- событие мыши - С:
- 1.5
- См. также:
processMouseMotionEvent
protected void processMouseMotionEvent(MouseEvent e)
- Переопределяет:
-
processMouseMotionEventв классеComponent - Параметры:
-
e- событиеMouseEvent - См. также:
enable
@Deprecated public void enable()
java.awt.Component.setEnabled(boolean).- Переопределяет:
-
enableв классеComponent
disable
@Deprecated public void disable()
java.awt.Component.setEnabled(boolean).- Переопределяет:
-
disableв классеComponent
getClientProperty
public final Object getClientProperty(Object key)
putClientProperty вернут значение отличное от null.- Параметры:
-
key- запрашиваемый ключ - Возвращает:
- значение этого свойства или
null - См. также:
putClientProperty
public final void putClientProperty(Object key, Object value)
Методы get/putClientProperty предоставляют доступ к небольшой хэш-таблице на экземпляр. Звонящие могут использовать get/putClientProperty для аннотирования компонентов, созданных другим модулем. Например, менеджер компоновки может хранить ограничения для каждого дочернего элемента таким образом. Например:
componentA.putClientProperty("to the left of", componentB);
Если значение равно null, этот метод удалит свойство. Изменения в клиентских свойствах отражаются событиями PropertyChange. Наименование свойства (для событий PropertyChange) равно key.toString(). Словарь clientProperty не предназначен для поддержки больших масштабов расширений JComponent и не следует рассматривать в качестве альтернативы наследованию при проектировании нового компонента.
- Параметры:
-
key- новый ключ клиентского свойства -
value- новое значение клиентского свойства; еслиnull, этот метод удалит свойство - См. также:
setFocusTraversalKeys
public void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)
Component.setFocusTraversalKeys(int, java.util.Set<? extends java.awt.AWTKeyStroke>) для полного описания этого метода. Этот метод может вызвать ClassCastException, если какой-либо Object в keystrokes не является AWTKeyStroke.
- Переопределяет:
-
setFocusTraversalKeysв классеContainer - Параметры:
-
id- одно из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS или KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS -
keystrokes- множество AWTKeyStroke для указанной операции - Исключения:
-
IllegalArgumentException- если id не является одним из KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, KeyboardFocusManager.BACKWARD_TRAVERSAL_KEYS или KeyboardFocusManager.UP_CYCLE_TRAVERSAL_KEYS, или если keystrokes содержит null, или если какой-либо keystroke представляет событие KEY_TYPED, или если какой-либо keystroke уже отображен на другую операцию перехода фокуса для этого компонента - С:
- 1.5
- См. также:
isLightweightComponent
public static boolean isLightweightComponent(Component c)
- Параметры:
-
c- проверяемыйComponent - Возвращает:
- true, если компонент легковесный
reshape
@Deprecated public void reshape(int x, int y, int w, int h)
Component.setBounds(int, int, int, int). Перемещает и изменяет размер этого компонента.
Component- Переопределяет:
-
reshapeв классеComponent - Параметры:
-
x- новое горизонтальное положение -
y- новое вертикальное положение -
w- новая ширина -
h- новая высота - См. также:
getBounds
public Rectangle getBounds(Rectangle rv)
rv и возвращает rv. Если rv равно null, выделяется новый Rectangle. Этот вариант getBounds полезен, если вызывающий не хочет выделять новый Rectangle объект в куче.- Переопределяет:
-
getBoundsв классеComponent - Параметры:
-
rv- возвращаемое значение, изменённое на границы компонента - Возвращает:
-
rv; еслиrvравноnull, возвращается новыйRectangleс границами этого компонента
getSize
public Dimension getSize(Dimension rv)
rv и возвращает rv. Если rv равно null, выделяется новый объект Dimension. Этот вариант getSize полезен, если вызывающий не хочет выделять новый Dimension объект в куче.- Переопределяет:
-
getSizeв классеComponent - Параметры:
-
rv- возвращаемое значение, изменённое на размер компонента - Возвращает:
rv
getLocation
public Point getLocation(Point rv)
rv и возвращает rv. Если rv равно null, выделяется новый Point. Этот вариант getLocation полезен, если вызывающий не хочет выделять новый Point объект в куче.- Переопределяет:
-
getLocationв классеComponent - Параметры:
-
rv- возвращаемое значение, изменённое на расположение компонента - Возвращает:
rv
getX
@BeanProperty(bound=false) public int getX()
component.getBounds().x или component.getLocation().x, так как он не вызывает выделения объектов в куче.- Переопределяет:
-
getXв классеComponent - Возвращает:
- текущую координату x начала компонента
getY
@BeanProperty(bound=false) public int getY()
component.getBounds().y, или component.getLocation().y, потому что он не вызывает выделения памяти.- Overrides:
-
getYв классеComponent - Возвращает:
- текущую координату y начала компонента
getWidth
@BeanProperty(bound=false) public int getWidth()
component.getBounds().width, или component.getSize().width, потому что он не вызывает выделения памяти.- Overrides:
-
getWidthв классеComponent - Возвращает:
- текущую ширину этого компонента
getHeight
@BeanProperty(bound=false) public int getHeight()
component.getBounds().height, или component.getSize().height, потому что он не вызывает выделения памяти.- Overrides:
-
getHeightв классеComponent - Возвращает:
- текущую высоту этого компонента
isOpaque
public boolean isOpaque()
Непрозрачный компонент рисует каждый пиксель в пределах своих прямоугольных границ. Непрозрачный компонент рисует только подмножество своих пикселей или вообще не рисует, позволяя пикселям под ним "просвечивать". Поэтому компонент, который не полностью рисует свои пиксели, обеспечивает некоторую степень прозрачности.
Подклассы, которые гарантируют всегда полное рисование своего содержимого, должны переопределить этот метод и вернуть true.
- Overrides:
-
isOpaqueв классеComponent - Возвращает:
- true, если этот компонент полностью непрозрачен
- См. также:
setOpaque
@BeanProperty(expert=true, description="The component\'s opacity") public void setOpaque(boolean isOpaque)
Значение по умолчанию этого свойства равно false для JComponent. Однако значение по умолчанию для этого свойства в большинстве стандартных подклассов JComponent (таких как JButton и JTree) зависит от темы оформления.
- Параметры:
-
isOpaque- true, если этот компонент должен быть непрозрачным - См. также:
computeVisibleRect
public void computeVisibleRect(Rectangle visibleRect)
Component - пересечение видимых прямоугольников для этого компонента и всех его предков. Результат сохраняется в visibleRect.- Параметры:
-
visibleRect- прямоугольникRectangle, вычисленный как пересечение всех видимых прямоугольников для этого компонента и всех его предков - это значение, возвращаемое данным методом - См. также:
getVisibleRect
@BeanProperty(bound=false) public Rectangle getVisibleRect()
Component - пересечение видимого прямоугольника этого компонента, new Rectangle(0, 0, getWidth(), getHeight()) и видимых прямоугольников всех его предков.- Возвращает:
- видимый прямоугольник
firePropertyChange
public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)
- Overrides:
-
firePropertyChangeв классеComponent - Параметры:
-
propertyName- свойство, значение которого изменилось -
oldValue- предыдущее значение свойства -
newValue- новое значение свойства
firePropertyChange
public void firePropertyChange(String propertyName, int oldValue, int newValue)
- Overrides:
-
firePropertyChangeв классеComponent - Параметры:
-
propertyName- свойство, значение которого изменилось -
oldValue- предыдущее значение свойства -
newValue- новое значение свойства
fireVetoableChange
protected void fireVetoableChange(String propertyName, Object oldValue, Object newValue) throws PropertyVetoException
PropertyChangeEvent всем зарегистрированным слушателям VetoableChangeListeners.- Параметры:
-
propertyName- имя свойства, за которым ведется наблюдение -
oldValue- старое значение свойства -
newValue- новое значение свойства - Исключения:
-
PropertyVetoException- когда попытка установить свойство отменена компонентом
addVetoableChangeListener
public void addVetoableChangeListener(VetoableChangeListener listener)
VetoableChangeListener в список слушателей. Слушатель регистрируется для всех свойств.- Параметры:
-
listener- добавляемый слушательVetoableChangeListener
removeVetoableChangeListener
public void removeVetoableChangeListener(VetoableChangeListener listener)
VetoableChangeListener из списка слушателей. Это удаляет слушателя VetoableChangeListener, который был зарегистрирован для всех свойств.- Параметры:
-
listener- удаляемый слушательVetoableChangeListener
getVetoableChangeListeners
@BeanProperty(bound=false) public VetoableChangeListener[] getVetoableChangeListeners()
- Возвращает:
- все слушатели изменений вето компонента или пустой массив, если слушатели изменений вето в данный момент не зарегистрированы
- Since:
- 1.4
- См. также:
getTopLevelAncestor
@BeanProperty(bound=false) public Container getTopLevelAncestor()
Window или Applet), или null если этот компонент не добавлен ни в одну контейнерную структуру.- Возвращает:
- верхнего
Container, в котором находится этот компонент, илиnull, если компонент не находится ни в одном контейнере
addAncestorListener
public void addAncestorListener(AncestorListener listener)
listener, чтобы он получал события AncestorEvents, когда он или любой из его предков перемещаются или становятся видимыми или невидимыми. События также отправляются, когда компонент или его предки добавляются или удаляются из иерархии контейнеров.- Параметры:
-
listener- регистрируемый слушательAncestorListener - См. также:
removeAncestorListener
public void removeAncestorListener(AncestorListener listener)
listener, чтобы он больше не получал события AncestorEvents.- Параметры:
-
listener- слушательAncestorListenerдля удаления - См. также:
getAncestorListeners
@BeanProperty(bound=false) public AncestorListener[] getAncestorListeners()
- Возвращает:
- все слушатели предков компонента или пустой массив, если слушатели предков не зарегистрированы
- Since:
- 1.4
- См. также:
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListener на этом JComponent. FooListener регистрируются с помощью метода addFooListener.
Вы можете указать аргумент listenerType с помощью литерала класса, например, FooListener.class. Например, вы можете запросить слушатели мыши для JComponent c с помощью следующего кода:
MouseListener[] mls = (MouseListener[])(c.getListeners(MouseListener.class));Если такие слушатели не существуют, этот метод возвращает пустой массив.
- Overrides:
-
getListenersв классеContainer - Type Parameters:
-
T- тип слушателей - Parameters:
-
listenerType- тип запрашиваемых слушателей; этот параметр должен указать интерфейс, унаследованный отjava.util.EventListener - Returns:
- массив всех объектов, зарегистрированных в качестве
FooListenerна этом компоненте, или пустой массив, если такие слушатели не были добавлены - Throws:
-
ClassCastException- еслиlistenerTypeне указывает класс или интерфейс, реализующийjava.util.EventListener - Since:
- 1.3
- See Also:
addNotify
public void addNotify()
KeyboardAction слушателями событий. Этот метод вызывается инструментарием внутри и не должен вызываться программами напрямую.- Overrides:
-
addNotifyв классеContainer - See Also:
removeNotify
public void removeNotify()
KeyboardAction, установленные в цепочке родительских компонентов, удаляются. Этот метод вызывается инструментарием внутри и не должен вызываться программами напрямую.- Overrides:
-
removeNotifyв классеContainer - See Also:
repaint
public void repaint(long tm, int x, int y, int width, int height)
- Overrides:
-
repaintв классеComponent - Parameters:
-
tm- этот параметр не используется -
x- значение x области, требующей перерисовки -
y- значение y области, требующей перерисовки -
width- ширина области, требующей перерисовки -
height- высота области, требующей перерисовки - See Also:
repaint
public void repaint(Rectangle r)
- Parameters:
-
r-Rectangle, содержащая область, требующую перерисовки - See Also:
revalidate
public void revalidate()
Вызывает invalidate, а затем добавляет validateRoot этого компонента в список компонентов, которые нужно валидировать. Валидация произойдёт после обработки всех текущих ожидающих событий. Другими словами, после вызова этого метода будет валидирован первый validateRoot (если таковой есть), найденный при обходе иерархии контейнеров этого компонента. По умолчанию JRootPane, JScrollPane и JTextField возвращают true из isValidateRoot.
Этот метод автоматически вызывается на этом компоненте, когда значение свойства изменяется таким образом, что изменяются размер, расположение или внутренняя компоновка этого компонента. Эта автоматическая обновление отличается от AWT, поскольку программы обычно больше не нуждаются в вызове validate, чтобы обновить содержимое GUI.
- Overrides:
-
revalidateв классеComponent - See Also:
isValidateRoot
public boolean isValidateRoot()
revalidate потомками этого компонента заставят валидировать всю ветвь, начиная с этого корня. По умолчанию возвращает false. JScrollPane переопределяет этот метод и возвращает true.- Overrides:
-
isValidateRootв классеContainer - Returns:
- всегда возвращает false
- See Also:
isOptimizedDrawingEnabled
@BeanProperty(bound=false) public boolean isOptimizedDrawingEnabled()
JComponent, которые не могут гарантировать это, такие как JLayeredPane, должны переопределить этот метод, чтобы вернуть false.- Returns:
- всегда возвращает true
isPaintingOrigin
protected boolean isPaintingOrigin()
true, если перерисовка, вызванная на дочернем компоненте, должна происходить с этого компонента или одного из его предков.
Вызов repaint(long, int, int, int, int) или paintImmediately(int, int, int, int) на Swing-компоненте приведёт к вызову метода paintImmediately(int, int, int, int) первого предка, который isPaintingOrigin() возвращает true, если таковой есть.
Подклассы JComponent, которые должны перерисовываться, когда перерисовывается любой из их потомков, должны переопределить этот метод, чтобы вернуть true.
- Returns:
- всегда возвращает
false - See Also:
paintImmediately
public void paintImmediately(int x, int y, int w, int h)
Редко требуется вызывать этот метод. В большинстве случаев более эффективно вызвать repaint, который откладывает фактическое перерисовывание и может объединить избыточные запросы в один вызов paint. Этот метод полезен, если нужно обновить отображение во время обработки текущего события.
Этот метод должен быть переопределён, когда область, требующая перерисовки, должна меняться для компонентов, которые являются источниками перерисовки.
- Parameters:
-
x- значение x области, подлежащей перерисовке -
y- значение y области, подлежащей перерисовке -
w- ширина области, подлежащей перерисовке -
h- высота области, подлежащей перерисовке - See Also:
paintImmediately
public void paintImmediately(Rectangle r)
- Parameters:
-
r-Rectangle, содержащая область, подлежащую перерисовке
setDoubleBuffered
public void setDoubleBuffered(boolean aFlag)
- Parameters:
-
aFlag- если true, этот компонент будет буферизован
isDoubleBuffered
public boolean isDoubleBuffered()
- Overrides:
-
isDoubleBufferedв классеComponent - Возвращает:
- true, если этот компонент использует буферизацию, иначе false
getRootPane
@BeanProperty(bound=false) public JRootPane getRootPane()
JRootPane для этого компонента.- Возвращает:
JRootPane, содержащий этот компонент, илиnull, если такойJRootPaneне найден
paramString
protected String paramString()
JComponent. Этот метод предназначен только для отладки, и содержание и формат возвращаемой строки могут отличаться в разных реализациях. Возвращаемая строка может быть пустой, но не null.- Overrides:
-
paramStringв классеContainer - Возвращает:
- строковое представление этого
JComponent
hide
@Deprecated public void hide()
- Overrides:
-
hideв классеComponent
© 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/javax/swing/JComponent.html
java.awt.Component.setEnabled(boolean).