HELLO WORLD, JAVAFX样式

指导你如何创建JavaFX应用程序的最好方式是从一个”Hello World”程序开始。本教程的一个附加功能是可以让你检测是否安装好了JavaFX开发环境。

本教程中使用的工具是NetBeans IDE 7.4。在你开始之前,请确保你使用的NetBeans IDE的版本支持JavaFX 8。参考Java SE 下载页面中的”Certified System Configurations”部分来了解更多信息。

构建应用程序

  1. 从”File”菜单中选择”New Project”。

  2. 在”JavaFX”应用程序分类中,选择”JavaFX Application”,单击”Next”按钮。

3. 将Project命名为”HelloWorld”并单击”Finish”按钮。

NetBeans将会打开HelloWorld.java文件并且使用基本的Hello World应用程序代码来填充其内容,如例3-1所示。

例3-1 Hello World

package helloworld;
 
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
 
public class HelloWorld extends Application {
 
   @Override
   public void start(Stage primaryStage) {
       Button btn = new Button();
       btn.setText(“Say 'Hello World'”);
       btn.setOnAction(new EventHandler<ActionEvent>() {
           @Override
           public void handle(ActionEvent event) {
              System.out.println(“Hello World!”);
           }
       });
 
       StackPane root = new StackPane();
       root.getChildren().add(btn);
       Scene scene = new Scene(root, 300, 250);
 
       primaryStage.setTitle(“Hello World!”);
       primaryStage.setScene(scene);
       primaryStage.show();
   }
 
   public static void main(String[] args) {
       launch(args);
   }
}

下面是理解JavaFX应用程序基本结构需要了解的一些重点:

● JavaFX应用程序的主类需要继承自application.Application类。start()方法是所有JavaFX应用程序的入口。

● JavaFX应用程序将UI容器定义为舞台(Stage)与场景(Scene)。Stage类是JavaFX顶级容器。Scene类是所有内容的容器。例3-1中创建了Stage和Scene,然后为Scene设置了大小并使其可见。

● 在JavaFX中,Scene中的内容会以由图形节点(Node)构成的分层场景图(Scene Graph)来展现。在本例中,root节点是一个StackPane对象,它是一个可以调整大小的layout节点。这就意味着在用户改变stage大小时,root节点可以随scene的大小变化而变化。

● root节点包含一个带文本的按钮子节点,按钮上添加了一个事件处理器(Event Handler),它在点击按钮时会向控制台输出信息。

● 当JavaFX应用程序是通过JavaFX Packager工具打包时,main()方法就不是必需的的了,因为JavaFX Package工具会将JavaFX Launcher嵌入到JAR文件中。但是保留main()方法还是很有用的,这样你可以运行不带有JavaFX Launcher的JAR文件,例如在使用某些没有将JavaFX工具完全集成进去的IDE时。另外嵌入了JavaFX代码的Swing应用程序仍需要main()方法。

下图展示了Hello World应用程序的场景图(Scene Graph)。如果想了解关于Scene Graph的信息,请参考文档:《使用JavaFX Scene Graph(Working with the JavaFX Scene Graph)》。

图3-1 Hello World场景图


了解更多

本章节总结了基本的Hello World教程,但是你可以继续阅读更多关于JavaFX应用程序开发的教程:

● “在JavaFX中创建一个表单”章节中描述屏幕布局的基本概念,指导如何向布局中添加控件,如何创建输入事件。

● “使用JavaFX CSS美化表单”章节中提供了简单的样式技巧来改进你的应用程序,包括增加背景图、样式化按钮和文本。

● “使用FXML进行用户界面设计”章节中展示了另外一种创建登录用户界面的方法。FXML是一种基于XML的语言,它提供了将用户界面代码与应用程序逻辑代码分离的结构。

● “JavaFX中的动画和视觉效果”展示了如何通过添加时间轴动画和混合效果来使应用程序变得活动起来的方法。


扫描二维码,在手机上阅读!
最后由 BF 编辑于2017年03月20日 20:53