JavaFx入门

软件百度网盘路径:我的网盘/Java/JavaFx环境部署
1.安装eclipse集成包(包已集成jdk1.8,JavaFx相关的插件,无须配置)
http://efxclipse.bestsolution.at/install.html#all-in-one
中文教程
http://www.yiibai.com/javafx/javafx-tutorial-for-beginners.html
下载完成后,直接解压文件,启动eclipse.exe即可
2.创建JavaFx项目
File-New-Other-搜索JavaFx-选择JavaFx Project
3.JavaFx项目结构说明

  • 项目主类继承自 javafx.application.Application
  • 程序入口点为onStart方法
  • JavaFx界面包含:舞台stage、场景scene。
    舞台stage是界面的顶级容器(top-level container)
    场景scene控件是分层界面的根,用来装载界面中所有控件

下图说明了界面元素的层次结构:


JavaFx入门_第1张图片
[Description of "Figure 1-1 Hello World Scene Graph"](http://docs.oracle.com/javafx/2/get_started/img_text/helloworld_scenegraph.htm)

4.安装JavaFX Scene Builder
用于可视化编辑界面
http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-1x-archive-2199384.html

下载安装后在Eclipse:
Window-References-JavaFx-Scenebuilder Executable
选择你安装路径JavaFX Scene Builder 2.0.exe
ctrl+P预览布局

使用FXML创建用户界面
http://docs.oracle.com/javafx/2/get_started/fxml_tutorial.htm#CHDCCHII

  • 创建fxml文件
  • 创建控制器MyController .java,
    fxml面板节点与控制器关联fx:controller="application/MyController "
    MyController .java
import java.net.URL;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
public class MyController implements Initializable {
    @FXML
    private Button myButton;

    @FXML
    private TextField myTextField;

    @Override
    public void initialize(URL location, ResourceBundle resources) {
        System.out.println("MyController initialize");
        // TODO (don't really need to do anything here).
    }

    // When user click on myButton
    // this method will be called.
    @FXML
    protected void handleSubmitButtonAction(ActionEvent event) {
        System.out.println("Button Clicked!");
        Date now = new Date();
        DateFormat df = new SimpleDateFormat("yyyy-dd-MM HH:mm:ss");
        String dateTimeString = df.format(now);
        // Show in VIEW
        myTextField.setText(dateTimeString);

    }
}
JavaFx入门_第2张图片
JavaFX 布局类

你可能感兴趣的:(JavaFx入门)