JavaFx UI控件與代碼間的綁定方法
JavaFx初探一,UI控件的使用,具體內(nèi)容如下
方式一:使用純代碼直接new view控件,這樣就不涉及到與fxml文件之間的交互了
方式二:使用fxml編寫界面文件,用可視化工具scene builder 來構(gòu)建交互界面。
分兩種方式綁定控件,可以用Android的方法在java中直接調(diào)用類似findviewbyId的方法,先在xml文件中設(shè)置fxid,然后根據(jù)id去找這個控件,代碼如下
@Override public void start(Stage primaryStage) throws Exception{ Parent root = FXMLLoader.load(getClass().getResource("sample.fxml")); BorderPane borderPane = (BorderPane)root.lookup("#iiid"); TableView tableView = new TableView(); TableColumn columnName = new TableColumn("姓名"); TableColumn columClass = new TableColumn("班級"); TableColumn columNum = new TableColumn("學(xué)號"); tableView.getColumns().addAll(columnName, columClass, columNum); borderPane.setCenter(tableView); primaryStage.setTitle("應(yīng)用測試"); primaryStage.setScene(new Scene(root,500,500)); primaryStage.show(); }
方式二
同樣需要設(shè)置id,不過可以通過給每個控件設(shè)置一個控制器類的方式,去獲取控件實例,在fxml文件中增加控制類的聲明 fx:controller=”sample.Controller”
注意:只能在根部局容器中才能設(shè)置這個控制器,設(shè)置好后,鼠標(biāo)選中id 快捷鍵alt+enter 即可在對應(yīng)的控制類中生成控件的對象(好像是根據(jù)注解映射來的)
控制器類也可以設(shè)置為main類,不用單獨新建一個類,根據(jù)情況定
<BorderPane fx:id="iiid" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.121" xmlns:fx="http://javafx.com/fxml/1" fx:controller="sample.Controller"> <top> <Button fx:id="button1" mnemonicParsing="false" text="按鈕1" BorderPane.alignment="CENTER"/> </top> </BorderPane>
鼠標(biāo)點擊事件可以在 on action中定義一個方法, 然后控制類中去實現(xiàn)這個方法,在該控件被點擊時就會被觸發(fā)。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
理解maven命令package、install、deploy的聯(lián)系與區(qū)別
這篇文章主要介紹了理解maven命令package、install、deploy的聯(lián)系與區(qū)別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07如何解決@SpringBootApplication報錯問題
這篇文章主要介紹了如何解決@SpringBootApplication報錯問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-07-07java多線程學(xué)習(xí)之死鎖的模擬和避免(實例講解)
下面小編就為大家?guī)硪黄猨ava多線程學(xué)習(xí)之死鎖的模擬和避免(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06淺談Java list.remove( )方法需要注意的兩個坑
這篇文章主要介紹了淺談Java list.remove( )方法需要注意的兩個坑,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法
這篇文章主要介紹了Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法,涉及java數(shù)組與字符串的相關(guān)操作技巧,需要的朋友可以參考下2015-05-05IDEA2023.3.4開啟SpringBoot項目的熱部署(圖文)
本文使用的開發(fā)工具是idea,使用的是springboot框架開發(fā)的項目,配置熱部署,可以提高開發(fā)效率,文中通過圖文介紹的非常詳細,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02Mybatis如何獲取insert新增數(shù)據(jù)id值
這篇文章主要介紹了Mybatis如何獲取insert新增數(shù)據(jù)id值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05Spring Boot 整合mybatis 使用多數(shù)據(jù)源的實現(xiàn)方法
這篇文章主要介紹了Spring Boot 整合mybatis 使用多數(shù)據(jù)源的實現(xiàn)方法,需要的朋友可以參考下2018-03-03