使用 Eclipse 開發 JavaFX 程序

什麼是JavaFX

         JavaFX是一個 Java 的圖形和媒體工具包。它使得Java應用程序開發者可以方便的設計開發富客戶應用(Rich Client Application)。

         有一點需要我們注意。最開始的時候,JavaFX 是作爲一種獨立的編程語言來發布的,有自己的 SDK,自己的語言格式(雖然同Java 很接近)。2.0 之前的JavaFX 基本上是一種腳本語言。但是從2011年10月發佈 JavaFX 2.0 開始,Oracle 決定以Java 工具包的形式來發布它。這樣做的好處是Java 開發人員不用爲了開發 RIA 再去學習另外一種編程語言了。我們看到網絡上大量關於 JavaFX 的資料還停留在腳本語言時代,顯然它們已經完全過時了。

JavaFX 配置

         如果你使用的是JDK1.7,那麼 JavaFX 工具包已經包含在裏面了。你只用在開發應用程序的時候將其導入類庫就好。如果使用的是 JDK 1.6,則需要自己下載一個 SDK。

使用 Ecilpse 開發JavaFX 程序示例

         由於現在 JavaFX 是以java 包的形式發佈的,因此,我們無需安裝任何插件就可以在 eclipse 裏開發JavaFX 程序了。

         我們使用了 JDK1.7.

1. 新建 Java Project。將其命名爲 javafx。



2. 將 “jfxrt.jar”導入類庫。右鍵javafx -> Properties -> Java Build Path -> Libraries -> AddExternal JARs. 在“jdk1.7.0_21/jre/lib”文件夾下可以找到“jfxrt.jar”文件。


3. 建立 HelloWorld 類。


4. 將下面代碼拷貝到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{
   public static void main(String[] args) {
       launch(args);
    }
  
   @Override
   public void start(Stage primaryStage) {
       primaryStage.setTitle("Hello World!");
       Button btn = new Button();
       btn.setText("Say 'Hello World'");
       btn.setOnAction(new EventHandler<ActionEvent>() {
           @Override
           public void handle(ActionEvent event) {
                System.out.println("HelloWorld!");
           }
       });
       
       StackPane root = new StackPane();
       root.getChildren().add(btn);
       primaryStage.setScene(new Scene(root, 300, 250));
       primaryStage.show();
    }
}


 

我們簡單解釋一下:

  • JavaFX 應用的應用類繼承了 javafx.application.Application 類。它的 start() 方法是所有 JavaFX 應用程序的入口。
  • JavaFX 的應用接口容器用 stage 和 scene 來定義(舞臺和場景)。Stage 類位於 JavaFX 容器的頂層,而 Scene 類則是所有內容部分(不包括邊框)的容器。
  • ·JavaFX 中 scene 的內容以一種具有層次結構的節點圖來表示。在這個例子中,根節點是 StackPane 對象。
  • 如果需要將 JavaFX Application 用 JavaFX 打包工具打包成 jar文件,那麼 main()方法就不是必須的。JavaFX 打包工具會嵌入一個 JavaFX launcher。不過如果沒有使用 JavaFX launcher,使用main() 方法還是很有用的。

下圖是該應用程序的場景圖:

       

 

5. OK。我們的第一個 JavaFX 程序做完了。點擊運行一下試試吧。


點擊“Say Hello World”,我們就會在控制檯看到輸出“Hello World”。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章