- java.lang.Object
-
- javafx.scene.Node
-
- javafx.embed.swing.SwingNode
-
- Все реализованные интерфейсы:
-
Styleable,EventTarget
public class SwingNode extends Node
Этот класс используется для встраивания Swing-содержимого в приложение JavaFX. Содержимое для отображения задается методомsetContent(javax.swing.JComponent), который принимает экземпляр Swing-компонентаJComponent. Иерархия компонентов, содержащихся в экземпляреJComponent, не должна содержать тяжеловесных компонентов, иначеSwingNodeможет не отобразить его. Содержимое перерисовывается автоматически. Все события ввода и фокуса передаются экземпляруJComponentпрозрачно для разработчика.Вот типичный шаблон, демонстрирующий, как можно использовать
SwingNode:public class SwingFx extends Application { @Override public void start(Stage stage) { final SwingNode swingNode = new SwingNode(); createAndSetSwingContent(swingNode); StackPane pane = new StackPane(); pane.getChildren().add(swingNode); stage.setScene(new Scene(pane, 100, 50)); stage.show(); } private void createAndSetSwingContent(final SwingNode swingNode) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { swingNode.setContent(new JButton("Click me!")); } }); } public static void main(String[] args) { launch(args); } }- С тех пор:
- JavaFX 8.0
-
Резюме свойств
-
Свойства, унаследованные от класса javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible
-
-
Резюме полей
-
Поля, унаследованные от класса javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
-
Резюме конструкторов
Конструкторы Конструктор Описание SwingNode()Создает новый экземплярSwingNode.
-
Резюме методов
Все методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание JComponentgetContent()Возвращает экземплярJComponent, прикрепленный к этомуSwingNode.booleanisResizable()Указывает, является ли этот узел типом, который может быть изменен размером своим родителем.doublemaxHeight(double width)Возвращает максимальную высотуSwingNodeдля использования в расчетах макета.doublemaxWidth(double height)Возвращает максимальную ширинуSwingNodeдля использования в расчетах макета.doubleminHeight(double width)Возвращает минимальную высотуSwingNodeдля использования в расчетах макета.doubleminWidth(double height)Возвращает минимальную ширинуSwingNodeдля использования в расчетах макета.doubleprefHeight(double width)Возвращает предпочтительную высотуSwingNodeдля использования в расчетах макета.doubleprefWidth(double height)Возвращает предпочтительную ширинуSwingNodeдля использования в расчетах макета.voidresize(double width, double height)Вызывается родителемSwingNodeво время макета для установки ширины и высотыSwingNode.voidsetContent(JComponent content)Прикрепляет экземплярJComponentдля отображения в этомSwingNode.-
Методы, унаследованные от класса javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBaselineOffset, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClassCssMetaData, getClip, getContentBias, getCssMetaData, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookup, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, queryAccessibleAttribute, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Методы, унаследованные от интерфейса javafx.css.Styleable
getStyleableNode
-
-
Подробное описание конструкторов
-
SwingNode
public SwingNode()
Создаёт новый экземплярSwingNode.
-
-
Подробное описание методов
-
setContent
public void setContent(JComponent content)
Прикрепляет экземплярJComponentдля отображения в этомSwingNode.Метод можно вызвать как в потоке JavaFX Application, так и в потоке Event Dispatch. Однако обращение к компоненту Swing должно происходить в потоке Event Dispatch в соответствии с ограничениями потоков Swing.
- Параметры:
-
content- компонент Swing для отображения в этомSwingNode - См. также:
-
EventQueue.isDispatchThread(),Platform.isFxApplicationThread()
-
getContent
public JComponent getContent()
Возвращает экземплярJComponent, прикреплённый к этомуSwingNode.Метод можно вызвать как в потоке JavaFX Application, так и в потоке Event Dispatch. Однако обращение к компоненту Swing должно происходить в потоке Event Dispatch в соответствии с ограничениями потоков Swing.
- Возвращает:
- компонент Swing, прикреплённый к этому
SwingNode - См. также:
-
EventQueue.isDispatchThread(),Platform.isFxApplicationThread()
-
isResizable
public boolean isResizable()
Описание скопировано из класса:NodeУказывает, является ли этот узел типом, который может быть изменён размером своим родителем. Если этот метод возвращает true, то родитель изменит размер узла (в идеале в пределах его диапазона размеров), вызвав node.resize(width,height) во время прохода компоновки. Все области, элементы управления и WebView являются изменяемыми классами, которые зависят от изменения размера родителями во время компоновки, как только будет применена вся информация о размерах и стилях CSS.Если этот метод возвращает false, то родитель не может изменить его размер во время компоновки (resize() — это нет-операция), и он должен возвращать layoutBounds для минимальных, предпочтительных и максимальных размеров. Группы, текст и все фигуры не изменяются размером и, следовательно, зависят от приложения для определения размера, устанавливая соответствующие свойства (например, ширина/высота для Rectangle, текст для Text и т. д.). Неизменяемые размером узлы всё равно могут перемещаться во время компоновки.
- Переопределяет:
-
isResizableв классеNode - Возвращает:
- является ли этот тип узла изменяемым размером его родителем во время компоновки
- См. также:
-
Node.getContentBias(),Node.minWidth(double),Node.minHeight(double),Node.prefWidth(double),Node.prefHeight(double),Node.maxWidth(double),Node.maxHeight(double),Node.resize(double, double),Node.getLayoutBounds()
-
resize
public void resize(double width, double height)Вызывается родителемSwingNodeво время компоновки для установки ширины и высотыSwingNode. Приложения не должны вызывать этот метод напрямую. Если приложению нужно напрямую установить размерSwingNode, оно должно установить ограничения минимального/предпочтительного/максимального размера компонента Swing, которые будут соответственно переданы вSwingNode, а его родитель учтёт эти настройки во время компоновки.- Переопределяет:
-
resizeв классеNode - Параметры:
-
width- целевая ширина области компоновки -
height- целевая высота области компоновки - См. также:
-
Node.isResizable(),Node.getContentBias(),Node.autosize(),Node.minWidth(double),Node.minHeight(double),Node.prefWidth(double),Node.prefHeight(double),Node.maxWidth(double),Node.maxHeight(double),Node.getLayoutBounds()
-
prefWidth
public double prefWidth(double height)
Возвращает предпочтительную ширинуSwingNodeдля использования в расчётах компоновки. Это значение соответствует предпочтительной ширине компонента Swing.- Переопределяет:
-
prefWidthв классеNode - Параметры:
-
height- высота, которая должна использоваться, если предпочтительная ширина зависит от неё - Возвращает:
- предпочтительная ширина, к которой узел должен быть изменён размером во время компоновки
- См. также:
-
Node.isResizable(),Node.getContentBias(),Node.autosize()
-
prefHeight
public double prefHeight(double width)
Возвращает предпочтительную высотуSwingNodeдля использования в расчётах компоновки. Это значение соответствует предпочтительной высоте компонента Swing.- Переопределяет:
-
prefHeightв классеNode - Параметры:
-
width- ширина, которая должна использоваться, если предпочтительная высота зависит от неё - Возвращает:
- предпочтительная высота, к которой узел должен быть изменён размером во время компоновки
- См. также:
-
Node.getContentBias(),Node.autosize()
-
maxWidth
public double maxWidth(double height)
Возвращает максимальную ширинуSwingNodeдля использования в расчётах компоновки. Это значение соответствует максимальной ширине компонента Swing.- Переопределяет:
-
maxWidthв классеNode - Параметры:
-
height- высота, которая должна использоваться, если максимальная ширина зависит от неё - Возвращает:
- максимальная ширина, к которой узел должен быть изменён размером во время компоновки
- См. также:
-
Node.isResizable(),Node.getContentBias()
-
maxHeight
public double maxHeight(double width)
Возвращает максимальную высотуSwingNodeдля использования в расчётах компоновки. Это значение соответствует максимальной высоте компонента Swing.- Переопределяет:
-
maxHeightв классеNode - Параметры:
-
width- ширина, которая должна использоваться, если максимальная высота зависит от неё - Возвращает:
- максимальная высота, к которой узел должен быть изменён размером во время компоновки
- См. также:
-
Node.isResizable(),Node.getContentBias()
-
minWidth
public double minWidth(double height)
Возвращает минимальную ширинуSwingNodeдля использования в расчётах компоновки. Это значение соответствует минимальной ширине компонента Swing.- Переопределяет:
-
minWidthв классеNode - Параметры:
-
height- высота, которая должна использоваться, если минимальная ширина зависит от неё - Возвращает:
- минимальная ширина, к которой узел должен быть изменён размером во время компоновки
- См. также:
-
Node.isResizable(),Node.getContentBias()
-
-
minHeight
public double minHeight(double width)
Возвращает минимальную высотуSwingNodeдля использования в расчётах макета. Это значение соответствует минимальной высоте компонента Swing.- Переопределяет:
-
minHeightв классеNode - Параметры:
-
width- ширина, которая должна быть использована, если минимальная высота зависит от неё - Возвращает:
- минимальную высоту, до которой узел должен быть изменён при макетировании
- См. также:
-
Node.isResizable(),Node.getContentBias()
-
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.