JavaFX 应用程序可以包含许多元素,包括各种媒体,如图像、视频、GIF 和所有维度的形状、文本等。这是为了提高应用程序的用户体验质量。所有这些元素都由 JavaFX 场景图上的节点表示。在本章中,我们将学习如何使用 JavaFX 在应用程序上显示 Text 节点。
JavaFX Text 节点
JavaFX 中的文本节点由名为 Text 的类表示,该类属于包 javafx.scene.text 。
此类包含多个属性,用于在 JavaFX 中创建文本并修改其外观。此类还继承了属于 javafx.scene.shape 包的 Shape 类。
因此,除了字体、对齐方式、行距、文本等文本属性外。它还继承了基本的形状节点属性,例如 strokeFill 、 stroke 、 strokeWidth 、 strokeType 等。
创建文本节点
由于包 javafx.scene.text 的类 Text 表示 JavaFX 中的文本节点,因此您可以通过实例化此类来创建文本,如下所示
Text text = new Text();
类 Text 包含一个名为 text 的字符串类型的属性,该属性表示要创建的文本。
实例化 Text 类后,需要使用 setText() 方法为此属性设置 value,如下所示。
String text = "Hello how are you"
Text.setText(text);
还可以通过使用各自的 setter 方法(即 setX() 和 setY))为属性 x 和 y 指定值来设置文本的位置(原点),如下面的代码块所示
text.setX(50);
text.setY(50);
例
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;
import javafx.scene.text.Text;
public class TextExample extends Application {
@Override
public void start(Stage stage) {
//Creating a Text object
Text text = new Text();
//Setting the text to be added.
text.setText("Hello how are you");
//setting the position of the text
text.setX(50);
text.setY(50);
//Creating a Group object
Group root = new Group(text);
//Creating a scene object
Scene scene = new Scene(root, 600, 300);
//Setting title to the Stage
stage.setTitle("Sample Application");
//Adding scene to the stage
stage.setScene