JavaFX场景

时间:2020-01-09 10:36:39  来源:igfitidea点击:

JavaFX Scene对象是JavaFX Scene图的根。换句话说,JavaFX Scene包含了其中的所有可视JavaFX GUI组件。 JavaFX Scene由类javafx.scene.Scene表示。必须在JavaFX舞台上设置一个"场景"对象才能可见。在此JavaFX"场景"教程中,我将向我们展示如何创建"场景"对象并向其中添加GUI组件。

创建场景

我们可以通过其构造函数创建一个JavaFXScene对象。作为参数,我们必须传递根JavaFX GUI组件,该组件将充当要在"场景"中显示的根视图。这是创建JavaFXScene对象的示例:

VBox  vBox  = new VBox();
Scene scene = new Scene(vBox);

在舞台上布置场景

为了使JavaFXScene可见,必须在JavaFXStage上设置它。这是在一个Stage上设置一个JavaFXScene的例子:

VBox vBox = new VBox(new Label("A JavaFX Label"));
Scene scene = new Scene(vBox);

Stage stage = new Stage();
stage.setScene(scene);

一次只能将JavaFX"场景"添加到一个"舞台","舞台"一次也只能显示一个"场景"。

场景图

如JavaFX概述中所述,场景图由添加到给定JavaFXScene对象的所有节点组成。每个"场景"对象都有自己的场景图。

场景图具有单个根节点。可以将其他节点添加到树状数据结构(树是一种图形)中的根节点上。

场景鼠标光标

可以设置JavaFXScene的鼠标光标。鼠标光标是在鼠标光标(指针)位置处显示的小图标。我们可以通过setCursor()方法设置"场景"的鼠标光标。这是设置JavaFXScene的鼠标光标的示例:

scene.setCursor(Cursor.OPEN_HAND);

" javafx.scene.Cursor"类包含许多常量,可用于指定要显示的鼠标光标。其中一些常量是:

  • Cursor.OPEN_HAND
  • Cursor.CLOSED_HAND
  • Cursor.CROSSHAIR
  • Cursor.DEFAULT
  • Cursor.HAND
  • Cursor.WAIT
  • Cursor.H_RESIZE
  • Cursor.V_RESIZE
  • Cursor.MOVE
  • Cursor.TEXT