如何在 JavaFX 中创建文本节点?
在 JavaFX 中,文本节点由 javafx.scene.text.Text 类表示。你可以通过实例化此类向 JavaFX 窗口添加文本。
文本节点的基本属性如下 −
X − 此属性表示文本的 x 坐标。你可以使用 setX() 方法为此属性设置值。
Y − 此属性表示文本的 y 坐标。你可以使用 setY() 方法为此属性设置值。
text − 此属性表示要在 JavaFX 窗口上显示的文本。你可以使用 setText() 方法为此属性设置值。
要在 JavaFx 窗口中插入/显示文本,你需要 −
实例化 Text 类。
设置基本属性,如位置和文本字符串,使用 setter 方法或通过将它们作为参数传递给构造函数。
将创建的节点添加到 Group 对象。
示例
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; import java.util.Scanner; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.stage.Stage; import javafx.scene.text.Text; public class CreatingText extends Application { public void start(Stage stage) throws FileNotFoundException { //Reading the contents of a text file. InputStream inputStream = new FileInputStream("D:\sample.txt"); Scanner sc = new Scanner(inputStream); StringBuffer sb = new StringBuffer(); while(sc.hasNext()) { sb.append(" "+sc.nextLine()+"\n"); } String str = sb.toString(); //Creating a text object Text text = new Text(); //Setting the properties of text text.setText(str); text.setWrappingWidth(580); text.setX(10.0); text.setY(25.0); //Setting the stage Group root = new Group(text); Scene scene = new Scene(root, 595, 300, Color.BEIGE); stage.setTitle("Displaying Text"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }
sample.txt
假设 sample.txt 文件的内容如下 −
JavaFX is a Java library used to build Rich Internet Applications. The applications written using this library can run consistently across multiple platforms. The applications developed using JavaFX can run on various devices such as Desktop Computers, Mobile Phones, TVs, Tablets, etc.. To develop GUI Applications using Java programming language, the programmers rely on libraries such as Advanced Windowing Tool kit and Swing. After the advent of JavaFX, these Java programmers can now develop GUI applications effectively with rich content.
输出
广告