
- JavaFX 教程
- JavaFX - 首頁
- JavaFX - 概述
- JavaFX 安裝和架構
- JavaFX - 環境
- JavaFX - 使用 Netbeans 安裝
- JavaFX - 使用 Eclipse 安裝
- JavaFX - 使用 Visual Studio Code 安裝
- JavaFX - 架構
- JavaFX - 應用程式
- JavaFX 二維圖形
- JavaFX - 二維圖形
- JavaFX - 繪製線條
- JavaFX - 繪製矩形
- JavaFX - 繪製圓角矩形
- JavaFX - 繪製圓形
- JavaFX - 繪製橢圓
- JavaFX - 繪製多邊形
- JavaFX - 繪製折線
- JavaFX - 繪製三次貝塞爾曲線
- JavaFX - 繪製二次貝塞爾曲線
- JavaFX - 繪製弧形
- JavaFX - 繪製 SVG 路徑
- JavaFX 二維物件的屬性
- JavaFX - 描邊型別屬性
- JavaFX - 描邊寬度屬性
- JavaFX - 描邊填充屬性
- JavaFX - 描邊屬性
- JavaFX - 描邊線連線屬性
- JavaFX - 描邊斜接限制屬性
- JavaFX - 描邊線端點屬性
- JavaFX - 平滑屬性
- JavaFX 路徑物件
- JavaFX - 路徑物件
- JavaFX - LineTo 路徑物件
- JavaFX - HLineTo 路徑物件
- JavaFX - VLineTo 路徑物件
- JavaFX - QuadCurveTo 路徑物件
- JavaFX - CubicCurveTo 路徑物件
- JavaFX - ArcTo 路徑物件
- JavaFX 顏色和紋理
- JavaFX - 顏色
- JavaFX - 線性漸變圖案
- JavaFX - 徑向漸變圖案
- JavaFX 文字
- JavaFX - 文字
- JavaFX 效果
- JavaFX - 效果
- JavaFX - 顏色調整效果
- JavaFX - 顏色輸入效果
- JavaFX - 圖片輸入效果
- JavaFX - 混合效果
- JavaFX - 光暈效果
- JavaFX - 輝光效果
- JavaFX - 方框模糊效果
- JavaFX - 高斯模糊效果
- JavaFX - 運動模糊效果
- JavaFX - 反射效果
- JavaFX - 棕褐色調效果
- JavaFX - 陰影效果
- JavaFX - 投影陰影效果
- JavaFX - 內陰影效果
- JavaFX - 照明效果
- JavaFX - Light.Distant 效果
- JavaFX - Light.Spot 效果
- JavaFX - Point.Spot 效果
- JavaFX - 位移對映
- JavaFX - 透視變換
- JavaFX 動畫
- JavaFX - 動畫
- JavaFX - 旋轉轉換
- JavaFX - 縮放轉換
- JavaFX - 平移轉換
- JavaFX - 淡入淡出轉換
- JavaFX - 填充轉換
- JavaFX - 描邊轉換
- JavaFX - 順序轉換
- JavaFX - 並行轉換
- JavaFX - 暫停轉換
- JavaFX - 路徑轉換
- JavaFX 圖片
- JavaFX - 圖片
- JavaFX 三維圖形
- JavaFX - 三維圖形
- JavaFX - 建立立方體
- JavaFX - 建立圓柱體
- JavaFX - 建立球體
- JavaFX 事件處理
- JavaFX - 事件處理
- JavaFX - 使用便捷方法
- JavaFX - 事件過濾器
- JavaFX - 事件處理器
- JavaFX UI 控制元件
- JavaFX - UI 控制元件
- JavaFX - 列表檢視
- JavaFX - 手風琴
- JavaFX - 按鈕欄
- JavaFX - 選擇框
- JavaFX - HTMLEditor
- JavaFX - 選單欄
- JavaFX - 分頁
- JavaFX - 進度指示器
- JavaFX - 滾動窗格
- JavaFX - 分隔符
- JavaFX - 滑塊
- JavaFX - 微調器
- JavaFX - 分割窗格
- JavaFX - 表格檢視
- JavaFX - 標籤頁窗格
- JavaFX - 工具欄
- JavaFX - 樹檢視
- JavaFX - 標籤
- JavaFX - 複選框
- JavaFX - 單選按鈕
- JavaFX - 文字欄位
- JavaFX - 密碼欄位
- JavaFX - 檔案選擇器
- JavaFX - 超連結
- JavaFX - 工具提示
- JavaFX - 警報框
- JavaFX - 日期選擇器
- JavaFX - 文字區域
- JavaFX 圖表
- JavaFX - 圖表
- JavaFX - 建立餅圖
- JavaFX - 建立折線圖
- JavaFX - 建立面積圖
- JavaFX - 建立柱狀圖
- JavaFX - 建立氣泡圖
- JavaFX - 建立散點圖
- JavaFX - 建立堆疊面積圖
- JavaFX - 建立堆疊柱狀圖
- JavaFX 佈局面板
- JavaFX - 佈局面板
- JavaFX - HBox 佈局
- JavaFX - VBox 佈局
- JavaFX - BorderPane 佈局
- JavaFX - StackPane 佈局
- JavaFX - TextFlow 佈局
- JavaFX - AnchorPane 佈局
- JavaFX - TilePane 佈局
- JavaFX - GridPane 佈局
- JavaFX - FlowPane 佈局
- JavaFX CSS
- JavaFX - CSS
- JavaFX 多媒體
- JavaFX - 處理多媒體
- JavaFX - 播放影片
- JavaFX 有用資源
- JavaFX - 快速指南
- JavaFX - 有用資源
- JavaFX - 討論
JavaFX - 繪製矩形
一般來說,矩形是一個四邊形,它有兩對平行且相交的邊,所有內角都是直角。
它由兩個引數描述:
高度 - 矩形的垂直長度稱為高度。
寬度 - 矩形的水平長度稱為寬度。

JavaFX 中的矩形
在 JavaFX 中,矩形由名為 Rectangle 的類表示。此類屬於包 javafx.scene.shape。
透過例項化此類,您可以在 JavaFX 中建立一個矩形節點。
此類具有 4 個 double 資料型別的屬性:
X - 矩形起點(左上角)的 x 座標。
Y - 矩形起點(左上角)的 y 座標。
寬度 - 矩形的寬度。
高度 - 矩形的高度。
要繪製矩形,您需要向這些屬性傳遞值,方法是在例項化時按相同順序將它們傳遞給此類的建構函式。
繪製矩形的步驟
您需要按照以下步驟在 JavaFX 中繪製矩形。
步驟 1:建立矩形
要在 JavaFX 中建立矩形,請例項化名為 Rectangle 的類(屬於包 javafx.scene.shape),如下所示:
//Creating a rectangle object Rectangle rectangle = new Rectangle();
由於整個程式碼都寫在 Application 類的 start() 方法中,因此 Rectangle 類也在其中例項化,如下所示:
public class ClassName extends Application { public void start(Stage primaryStage) throws Exception { // Write code here Rectangle rectangle = new Rectangle(); } }
步驟 2:設定矩形的屬性
指定起始點(左上角)的 x、y 座標以及需要繪製的矩形的高度和寬度。您可以使用各自的 setter 方法設定 x、y、height 和 width 屬性來實現。
rectangle.setX(150.0f); rectangle.setY(75.0f); rectangle.setWidth(300.0f); rectangle.setHeight(150.0f);
步驟 3:將矩形物件新增到組
在此步驟中,將透過將矩形物件作為引數值傳遞給其建構函式來例項化包 javafx.scene 中的 Group 類,如下所示:
Group root = new Group(rectangle);
步驟 4:啟動應用程式
建立二維物件後,請按照以下步驟正確啟動應用程式:
首先,透過將 Group 物件作為引數值傳遞給其建構函式來例項化名為 Scene 的類。您可以將應用程式螢幕的尺寸作為可選引數傳遞給此建構函式。
然後,使用 Stage 類的 setTitle() 方法設定舞臺的標題。
現在,使用名為 Stage 的類的 setScene() 方法將 Scene 物件新增到舞臺。
使用名為 show() 的方法顯示場景的內容。
最後,使用 launch() 方法啟動應用程式。
示例
以下是生成 JavaFX 矩形的程式。將此程式碼儲存在名為 RectangleExample.java 的檔案中。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.scene.shape.Rectangle; public class RectangleExample extends Application { @Override public void start(Stage stage) { //Drawing a Rectangle Rectangle rectangle = new Rectangle(); //Setting the properties of the rectangle rectangle.setX(150.0f); rectangle.setY(75.0f); rectangle.setWidth(300.0f); rectangle.setHeight(150.0f); //Creating a Group object Group root = new Group(rectangle); //Creating a scene object Scene scene = new Scene(root, 600, 300); //Setting title to the Stage stage.setTitle("Drawing a Rectangle"); //Adding scene to the stage stage.setScene(scene); //Displaying the contents of the stage stage.show(); } public static void main(String args[]){ launch(args); } }
使用以下命令從命令提示符編譯並執行儲存的 java 檔案。
javac --module-path %PATH_TO_FX% --add-modules javafx.controls RectangleExample.java java --module-path %PATH_TO_FX% --add-modules javafx.controls RectangleExample
輸出
執行上述程式後,將生成一個 JavaFX 視窗,其中顯示如下螢幕截圖所示的矩形。

示例 - 繪製房屋
讓我們來看另一個示例,我們嘗試使用矩形繪製房屋。在這裡,我們使用兩個矩形和兩條線來完成卡通房屋的基本版本。我們將此檔案命名為 RectangleHouse.java。
import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.stage.Stage; import javafx.scene.shape.Rectangle; import javafx.scene.shape.Line; import javafx.scene.paint.Color; public class RectangleHouse extends Application { @Override public void start(Stage stage) { //Drawing a Rectangle Rectangle rectangle1 = new Rectangle(); Rectangle rectangle2 = new Rectangle(200.0f, 120.0f, 50.0f, 30.0f); rectangle2.setFill(Color.hsb(50, 1, 1)); //Setting the properties of the rectangle rectangle1.setX(150.0f); rectangle1.setY(75.0f); rectangle1.setWidth(150.0f); rectangle1.setHeight(75.0f); // Setting the properties of Lines // without setter methods Line line1 = new Line(150, 75, 225, 30); Line line2 = new Line(225, 30, 300, 75); //Creating a Group object Group root = new Group(); root.getChildren().addAll(rectangle1, rectangle2, line1, line2); //Creating a scene object Scene scene = new Scene(root, 600, 300); //Setting title to the Stage stage.setTitle("Drawing a House"); //Adding scene to the stage stage.setScene(scene); //Displaying the contents of the stage stage.show(); } public static void main(String args[]){ launch(args); } }
使用以下命令從命令提示符編譯並執行儲存的 java 檔案。
javac --module-path %PATH_TO_FX% --add-modules javafx.controls RectangleHouse.java java --module-path %PATH_TO_FX% --add-modules javafx.controls RectangleHouse
輸出
執行上述程式後,將生成一個 JavaFX 視窗,其中顯示如下螢幕截圖所示的房屋。
