javafx初探一,ui控件的使用,具體內(nèi)容如下
方式一:使用純代碼直接new view控件,這樣就不涉及到與fxml文件之間的交互了
方式二:使用fxml編寫(xiě)界面文件,用可視化工具scene builder 來(lái)構(gòu)建交互界面。
分兩種方式綁定控件,可以用android的方法在java中直接調(diào)用類似findviewbyid的方法,先在xml文件中設(shè)置fxid,然后根據(jù)id去找這個(gè)控件,代碼如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
@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( "班級(jí)" ); tablecolumn columnum = new tablecolumn( "學(xué)號(hào)" ); tableview.getcolumns().addall(columnname, columclass, columnum); borderpane.setcenter(tableview); primarystage.settitle( "應(yīng)用測(cè)試" ); primarystage.setscene( new scene(root, 500 , 500 )); primarystage.show(); } |
方式二
同樣需要設(shè)置id,不過(guò)可以通過(guò)給每個(gè)控件設(shè)置一個(gè)控制器類的方式,去獲取控件實(shí)例,在fxml文件中增加控制類的聲明 fx:controller=”sample.controller”
注意:只能在根部局容器中才能設(shè)置這個(gè)控制器,設(shè)置好后,鼠標(biāo)選中id 快捷鍵alt+enter 即可在對(duì)應(yīng)的控制類中生成控件的對(duì)象(好像是根據(jù)注解映射來(lái)的)
控制器類也可以設(shè)置為main類,不用單獨(dú)新建一個(gè)類,根據(jù)情況定
1
2
3
4
5
6
7
8
|
<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)點(diǎn)擊事件可以在 on action中定義一個(gè)方法, 然后控制類中去實(shí)現(xiàn)這個(gè)方法,在該控件被點(diǎn)擊時(shí)就會(huì)被觸發(fā)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://blog.csdn.net/superman4933/article/details/81410858