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)文章
Java中Comparable與Comparator的區(qū)別解析
這篇文章主要介紹了Java中Comparable與Comparator的區(qū)別解析,實現(xiàn)Comparable接口,重寫compareTo方法,一般在實體類定義的時候就可以選擇實現(xiàn)該接口,提供一個默認(rèn)的排序方式,供Arrays.sort和Collections.sort使用,需要的朋友可以參考下2024-01-01
詳解直接插入排序算法與相關(guān)的Java版代碼實現(xiàn)
這篇文章主要介紹了直接插入排序算法與相關(guān)的Java版代碼實現(xiàn),需要的朋友可以參考下2016-05-05
Java自帶定時任務(wù)ScheduledThreadPoolExecutor實現(xiàn)定時器和延時加載功能
今天小編就為大家分享一篇關(guān)于Java自帶定時任務(wù)ScheduledThreadPoolExecutor實現(xiàn)定時器和延時加載功能,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12
Springboot啟動同時創(chuàng)建數(shù)據(jù)庫和表實現(xiàn)方法
這篇文章主要介紹了Springboot啟動同時創(chuàng)建數(shù)據(jù)庫和表,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-01-01
SpringBoot+MyBatis實現(xiàn)登錄案例
前端時間在網(wǎng)上看到有朋友在學(xué)習(xí)springboot項目的搭建過程,今天就抽空給大家分享一個案例幫助大家學(xué)習(xí)SpringBoot+MyBatis實現(xiàn)登錄功能,具體實現(xiàn)代碼跟隨小編一起看看吧2021-06-06

