更为详尽的内容,建议大家去http://www.javafxchina.net看看。
声明:如需转载,请注明出处:http://blog.csdn.net/originer
原文出处:http://docs.oracle.com/javase/8/javafx/get-started-tutorial/get_start_apps.htm#JFXST804
介绍一些样例程序,包括布局、控件、样式表、FXML和虚化效果。
1.Hello World
在开始之前,装好Java、装好编辑器(NetBean,我用的是Eclipse)巴拉巴拉……
在IDE中(NetBean等)新建工程,创建HelloWorld.java代码:
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()方法是程序入口。
- 将UI容器定义为舞台(stage)与场景(Scene)。Stage是*容器。Scene类是所有子组件的容器。本例中创建了stage和scene,然后为scene设置了大小并使其可见。
- scene中的内容以层级的场景图形节点来展。在本例中,根节点是一个StackPane对象,它是可以被重新设置大小layout节点。这就意味着在用户改变stage大小时,root节点可以随scene改变大小。
- root节点包含一个文本按钮子节点,按钮上添加了一个事件处理器,在点击按钮时会向控制台输出信息。
- 如果JavaFX应用是通过JavaFX Packager工具打包,则main()方法不是必须的,JavaFX将通过Jar包中的JavaFX Launcher 来运行。但是保留main()方法将在IDE中调试和集成SWing应用时是很有用的。
下图展示了Hello World应用程序的场景图(scenen graph)。