《java程式設計基礎》javaFX的佈局皮膚
1.棧皮膚類StackPane
建立棧皮膚,將在其上放置兩個按鈕,並用樣式屬性設定按鈕和棧皮膚的外觀樣式。
package yuan; //棧皮膚的應用
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane; //載入棧皮膚類
public class App14_3 extends Application{
Button bt =new Button(“確定”);
@Override
public void start(Stage primaryStage) {
// TODO Auto-generated method stub
StackPane sPane = new StackPane(); //建立棧皮膚物件
bt.setStyle("-fx-border-color:blue");//設定按鈕的邊框顏色為藍色
Button bt1 = new Button("我也是按鈕");
bt1.setPrefSize(80, 50); //設定按鈕的優先大小,即自定義按鈕的大小
bt.setStyle("-fx-border-color:green"); //設定bt1按鈕的邊框顏色為綠色
bt1.setRotate(-45); //將bt1按鈕按逆時針旋轉45度
sPane.getChildren().addAll(bt1,bt); //將按鈕加入棧皮膚中
sPane.setRotate(45); //設定將棧皮膚順時針旋轉45度
sPane.setStyle("-fx-border-color:red;-fx-background-color:lightgray");
Scene scene = new Scene(sPane,180,100);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Application.launch(args); //啟動獨立的JavaFx程式
}
}
2.流式皮膚類FlowPane
建立流式皮膚,將按鈕放入其中,然後再將流式皮膚加入場景。
package yuan;
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.FlowPane;
import javafx.scene.layout.StackPane;
import javafx.geometry.Orientation;
import javafx.geometry.Insets;
public class App14_4 extends Application{
Button[]bt = new Button[6]; //建立按鈕陣列
@Override
public void start(Stage primaryStage) {
// TODO Auto-generated method stub
FlowPane rootNode = new FlowPane(); //建立流式皮膚物件
rootNode.setOrientation(Orientation.HORIZONTAL);//設定結點水平擺放
rootNode.setPadding(new Insets(12,13,14,15)); //設定皮膚邊緣內側四周空白的距離
rootNode.setHgap(8); //設定皮膚上結點之間的水平間距為8畫素
rootNode.setVgap(5); //設定皮膚上結點之間的垂直間距為5畫素
for(int i=0;i<bt.length;i++) {
bt[i] = new Button(“按鈕”+(i+1));
rootNode.getChildren().add(bt[i]);//將命令按鈕bt[i]放入流式皮膚中
}
Scene scene = new Scene(rootNode,200,80);
primaryStage.setTitle(“流式皮膚”);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Application.launch(args); //啟動獨立的JavaFx程式
}
}
3.邊界皮膚類BoderPane
建立邊界式皮膚,並在每個區域中放置一個按鈕。
package yuan;
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.geometry.Insets;
public class App14_5 extends Application{
@Override
public void start(Stage primaryStage) {
// TODO Auto-generated method stub
BorderPane rootPane = new BorderPane();//建立邊界式皮膚物件
rootPane.setPadding(new Insets(10)); //設定邊界皮膚邊緣內側空白距離均為10畫素
Button bt = new Button("頂部工具條");
bt.setPrefSize(280, 20); //設定按鈕的優先大小,即自定義按鈕的大小
rootPane.setTop(bt); //將按鈕放置在邊界皮膚的頂部區域
rootPane.setBottom(new Button("底部狀態列")); //將按鈕放置在邊界皮膚的底部區域
rootPane.setLeft(new Button("左部導航選單"));//將按鈕放置在邊界皮膚的左部區域
rootPane.setRight(new Button("顯示資訊"));//將按鈕放置在邊界皮膚的右部區域
rootPane.setCenter(new Button("中間工作區"));//將按鈕放置在邊界皮膚的中部區域
Scene scene = new Scene(rootPane,280,130);
primaryStage.setTitle("邊界式皮膚");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Application.launch(args); //啟動獨立的JavaFx程式
}
}
4.單行皮膚類HBox和單行列表皮膚類VBox
建立單行皮膚,在單行皮膚中放入兩個自定義大小的按鈕,並設定每個按鈕四周邊緣外側空白部分的距離。
package yuan; //單行皮膚的應用
import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.HBox;
import javafx.geometry.Insets;
public class App14_6 extends Application{
Button bt1 = new Button("上一步");
Button bt2 = new Button("下一步");
@Override
public void start(Stage primaryStage) {
// TODO Auto-generated method stub
HBox hb = new HBox(); //建立單行皮膚物件hb
bt1.setPrefSize(160, 20); //自定義按鈕大小,即設定按鈕的優先大小
hb.setMargin(bt1, new Insets(5,5,5,5)); //設定bt1四周邊緣外側空白距離
bt2.setPrefSize(80, 20); //自定義按鈕大小
hb.setMargin(bt2, new Insets(10)); //設定bt2四周邊緣外側空白距離均為10畫素
hb.getChildren().addAll(bt1,bt2); //將按鈕bt1和bt2放入單行皮膚中
Scene scene = new Scene(hb,300,50);
primaryStage.setTitle("單行皮膚");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Application.launch(args); //啟動獨立的JavaFx程式
}
}
相關文章
- 《java程式設計基礎》java的基礎知識(三)Java程式設計
- Java 基礎02Java程式設計基礎Java程式設計
- 移動佈局基礎之 流式佈局
- Java程式設計基礎33——JDBCJava程式設計JDBC
- JAVA網路程式設計基礎Java程式設計
- Java 基礎程式設計筆記Java程式設計筆記
- Java併發程式設計基礎Java程式設計
- 《java程式設計基礎》方法的過載Java程式設計
- 網頁佈局基礎網頁
- 前端佈局基礎概述前端
- 《java程式設計基礎》例題5.6Java程式設計
- Java入門之基礎程式設計Java程式設計
- java程式設計師程式設計筆試基礎學習Java程式設計師筆試
- Rust 程式設計:記憶體佈局Rust程式設計記憶體
- css佈局基礎總結CSS
- Java基礎之多執行緒程式設計Java執行緒程式設計
- Java程式設計基礎17——集合(List集合)Java程式設計
- Java程式設計基礎29——JavaSE總結Java程式設計
- Java程式設計基礎05——方法(函式)Java程式設計函式
- Java擴充-網路程式設計基礎Java程式設計
- java 設計模式基礎Java設計模式
- 好程式設計師Java培訓分享20個Java程式設計師基礎題程式設計師Java
- Flutter基礎-009-Row水平佈局與Column垂直佈局Flutter
- 移動端佈局基礎viewportView
- 【Flutter 基礎】 檢視佈局-前言Flutter
- 好程式設計師Java教程分享Java的4大核心基礎程式設計師Java
- 摺疊皮膚元件的設計與實現元件
- Java程式設計基礎32——MySQL多表聯查Java程式設計MySql
- Java程式設計基礎23——IO(其他流)&PropertiesJava程式設計
- Java程式設計基礎24——遞迴練習Java程式設計遞迴
- Java程式設計基礎31——MySql資料庫Java程式設計MySql資料庫
- Java程式設計基礎28——反射&JDK新特性Java程式設計反射JDK
- Java併發程式設計——基礎知識(二)Java程式設計
- Java併發程式設計-執行緒基礎Java程式設計執行緒
- Java併發程式設計——基礎知識(一)Java程式設計
- Java網路程式設計快速上手(SE基礎)Java程式設計
- Java-基礎程式設計-多執行緒Java程式設計執行緒
- 《Java程式設計邏輯》第3章 類的基礎Java程式設計