日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

JavaFX 2.0 Hello World

發(fā)布時間:2023/12/3 java 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaFX 2.0 Hello World 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在討論示例本身之前,我想向您展示如何在NetBeans中創(chuàng)建JavaFX應用程序。 (如果尚未安裝JavaFX和NetBeans,請參閱我以前的文章《 安裝JavaFX 2.0和NetBeans 7.7.1》 )單擊“文件”菜單中的“新建項目”以打開項目向導。 然后選擇“ JavaFX-> JavaFX Application”,然后按“ Next”。

在下一個對話框中,您可以指定應用程序的名稱和目標文件夾,該文件夾應存儲在該文件夾中。 如果您已正確安裝JavaFX,則應已指定“ JavaFX Platform”。 否則,您可以通過單擊“管理平臺->添加平臺”并指定JavaFX安裝的路徑來自己添加平臺。

注意:默認情況下,“創(chuàng)建應用程序類”復選框處于選中狀態(tài)。 請取消選中它,因為我們將創(chuàng)建自己的應用程序類。
單擊“完成”以創(chuàng)建您的第一個JavaFX應用程序。

JavaFX 2.0中的Hello World –示例1

大概每個軟件開發(fā)人員都知道著名的“ HelloWorld”示例,因為該示例通常用于顯示(未知)編程語言的語法并給出語言的初步線索。 我不想破壞這一傳統(tǒng),因此這里有JavaFX 2.0中HelloWorld程序的2個不同版本。 我將首先顯示完整的代碼,然后說明各個部分。

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;/*** * Created on: 17.03.2012* @author Sebastian Damm*/ public class HelloJavaFX extends Application {@Overridepublic void start(Stage stage) throws Exception{ Button bt = new Button('Print HelloWorld');bt.setOnAction(new EventHandler<ActionEvent>() {@Overridepublic void handle(ActionEvent arg0){System.out.println('HelloWorld! :)');}});StackPane root = new StackPane();Scene scene = new Scene(root, 300, 150);root.getChildren().add(bt);stage.setTitle('HelloWorld in JavaFX 2.0');stage.setScene(scene);stage.show();}public static void main(String[] args){Application.launch(args);} }

值得一提的第一件事是,您必須從Application類進行擴展才能創(chuàng)建一個有效的JavaFX應用程序。 此類提供了幾種實時循環(huán)方法,并且是您應用程序的起點。 它是一個抽象類(意味著您無法實例化它),它具有一個必須覆蓋的抽象方法start 。 JavaFX運行時為您提供了一個stage對象,您可以使用該對象來顯示您的UI。


要啟動您的應用程序,您必須調用靜態(tài)方法launch如本示例中的main方法所示。 啟動應用程序后,它將調用start方法。 這是Application類的JavaDoc,它顯示了啟動JavaFX應用程序時的各個步驟。 JavaFX應用程序的入口點是Application類。 每當啟動應用程序時,JavaFX運行時就會依次執(zhí)行以下操作:構造指定的Application類的實例

  • 調用init()方法
  • 調用start(javafx.stage.Stage)方法
  • 等待應用程序完成,這可能在關閉最后一個窗口或應用程序調用Platform.exit()時發(fā)生
  • 調用stop()方法

讓我們start方法中的真實源代碼start 。
首先,我們創(chuàng)建一個簡單的Button并指定一個通過setOnAction方法單擊按鈕時要觸發(fā)的動作(比較JButton的addActionListener )。
接下來,我們創(chuàng)建一個StackPane對象,該對象是JavaFX中的布局窗格之一(下一篇博客文章將介紹JavaFX中的所有不同布局窗格)。 我在這里使用StackPane ,因為它會自動占用其周圍父級提供的所有可用空間,并且會自動將其子級內部居中。

注意: JavaFX應用程序的基礎是Scene graph 。 每個Node (包括簡單的控件,組和布局窗格)都是節(jié)點的分層樹的一部分,該樹稱為“ Scene graph 。 Scene graph以及整個JavaFX應用程序始終只有一個根節(jié)點!

如上所述, start方法具有一個Stage對象參數(shù),該參數(shù)由JavaFX運行時提供。 此Stage對象是一種窗口。 您必須為其提供一個Scene對象作為其可見內容。 您可以通過傳遞應用程序的根節(jié)點來創(chuàng)建一個Scene對象。 可選參數(shù)包括場景的寬度和高度以及Paint對象,其中包括簡單的顏色以及復雜的顏色漸變。
使用root.getChildren().add(bt); 您將按鈕添加到您的根節(jié)點,這是一個堆棧窗格。 之后,我們?yōu)閟tage設置標題并應用創(chuàng)建的scene對象。 最后使用show方法,我們告訴stage進行展示。 (比較Swing的setVisible

現(xiàn)在,您的應用程序應如下所示:

如果您單擊按鈕,它將在命令行上打印“ HelloWorld”。 沒什么特別的,但是這是您第一個可以使用的JavaFX應用程序,恭喜! :)

JavaFX 2.0中的Hello World –示例2

Additionally a slightly changed example, which will show the text in the GUI.
The code:

import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.effect.DropShadow; import javafx.scene.paint.Color; import javafx.scene.text.Font; import javafx.scene.text.Text; import javafx.stage.Stage;/*** * Created on: 17.03.2012* @author Sebastian Damm*/ public class HelloJavaFX2 extends Application {@Overridepublic void start(Stage stage) throws Exception{final Group root = new Group();Scene scene = new Scene(root, 500, 200, Color.DODGERBLUE);final Text text = new Text(140, 120, 'Hello JavaFX 2.0!');text.setFont(Font.font('Calibri', 35));text.setFill(Color.WHITE);text.setEffect(new DropShadow()); Button bt = new Button('Show HelloWorld'); bt.setLayoutX(180);bt.setLayoutY(50);bt.setOnAction(new EventHandler<ActionEvent>() {@Overridepublic void handle(ActionEvent arg0){root.getChildren().add(text);}});root.getChildren().add(bt);stage.setTitle('HelloWorld in JavaFX 2.0');stage.setScene(scene);stage.show();}public static void main(String[] args){Application.launch(args);} }

我們在這里使用Group對象,而不是使用布局窗格。 Group是Parent的子類(是Node的子類),并接收一個或多個子代。 Group直接調整大小,您可以向Group添加變換或效果,這將影響Group所有子級。 (請注意,我們現(xiàn)在還提供了“ Scene Paint Scene 。)
接下來,我們創(chuàng)建一個Text對象。 因為沒有布局窗格,所以我們直接指定x和y坐標。 我們指定一種自定義字體,將顏色更改為白色,然后添加一個DropShadow 。 Button還獲得坐標,并且當我們單擊按鈕時,而不是在命令行上打印“ HelloWorld”,而是將創(chuàng)建的Text對象添加到我們的根元素(并因此添加到Scene Graph )。 單擊按鈕后,您的應用程序應如下所示。

摘要:

  • JavaFX Stage對象是一種窗口,其行為類似于Swing中的JFrame或JDialog 。
  • JavaFX Scene對象是Stage的可見內容,并且具有單個Parent根節(jié)點。
  • Node是JavaFX中最重要的類之一。 每個控件或布局窗格都是一種節(jié)點。
  • Scene Graph是節(jié)點的分層樹。 它只有一個根節(jié)點,是您應用程序的基礎。 它必須傳遞給一個Scene對象
  • 為了創(chuàng)建和啟動JavaFX應用程序,您必須完成以下步驟:
    • 擴展Application類

參考: JavaFX 2.0中的Hello World,來自我們的JCG合作伙伴 Sebastian Damm,作者關于Java博客的Just my 2 cents 。


翻譯自: https://www.javacodegeeks.com/2012/06/javafx-20-hello-world.html

總結

以上是生活随笔為你收集整理的JavaFX 2.0 Hello World的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。