JavaFX标签
时间:2020-01-09 10:36:38 来源:igfitidea点击:
JavaFX Label控件可以在JavaFX GUI中显示文本或者图像标签。必须将标签控件添加到场景图中才能看到。 JavaFX Label控件由类javafx.scene.control.Label
表示。
创建标签
我们可以通过创建Label
类的实例来创建标签控件实例。这是一个JavaFX Label实例化示例:
Label label = new Label("My Label");
如我们所见,标签中显示的文本将作为参数传递给Label
构造函数。
向场景图添加标签
要使"标签"可见,必须将其添加到场景图中。这意味着将其添加到"场景"对象,或者作为添加到"场景"对象的布局的子级。
这是一个将JavaFXLabel
添加到场景图的示例:
package com.Hyman.javafx.controls; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.stage.Stage; public class LabelExperiments extends Application { @Override public void start(Stage primaryStage) throws Exception { primaryStage.setTitle("HBox Experiment 1"); Label label = new Label("My Label"); Scene scene = new Scene(label, 200, 100); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { Application.launch(args); } }
注意,"标签"被直接添加到"场景"对象中。通常,我们会将Label
嵌套在某种布局组件中。为了使示例简单,我在这里省略了该内容。请参阅有关布局组件的教程,以了解它们如何工作。
运行上面的JavaFXLabel
示例的结果是一个看起来像这样的应用程序:
在标签中显示图像
可以在标签文本旁边的标签内显示图像。 JavaFXLabel
类包含一个构造函数,该构造函数可以将Node
作为额外参数。这是一个JavaFX标签示例,该示例使用JavaFX ImageView组件将图像添加到标签中:
package com.Hyman.javafx.controls; import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.stage.Stage; import java.io.FileInputStream; public class LabelExperiments extends Application { @Override public void start(Stage primaryStage) throws Exception { primaryStage.setTitle("HBox Experiment 1"); FileInputStream input = new FileInputStream("resources/images/iconmonstr-home-6-48.png"); Image image = new Image(input); ImageView imageView = new ImageView(image); Label label = new Label("My Label", imageView); Scene scene = new Scene(label, 200, 100); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { Application.launch(args); } }
运行上面的JavaFXLabel
示例的结果是一个看起来像这样的应用程序:
更改标签的文字
我们可以使用标签的setText()方法更改标签的文本。这可以在应用程序运行时完成。有关单击按钮时更改标签文本的示例,请参见JavaFX Button教程。
设置标签字体
我们可以通过调用JavaFXLabel
的setFont()方法来更改其字体。如果我们需要更改文本的大小或者想要使用其他文本样式,这将很有用。这是设置JavaFXLabel
的字体的示例:
Label label = new Label("A label with custom font set."); label.setFont(new Font("Arial", 24));
这个示例告诉Label
使用大小为24的Arial
字体。