使用javafx设计一个显示矩形Rectangle的程序ShowRectangleCentered.java,要求无论窗口如何变化,将矩形显示在窗口的中间部分。矩形的宽度和高度可以自己选定。
时间: 2024-02-11 22:06:02 浏览: 91
设计一个矩形类Rectangle(Java)
好的,我可以为您编写一个JavaFX程序,以显示居中的矩形。以下是ShowRectangleCentered.java的代码:
```java
import javafx.application.Application;
import javafx.geometry.Rectangle2D;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Screen;
import javafx.stage.Stage;
public class ShowRectangleCentered extends Application {
private final double RECT_WIDTH = 200; // 矩形的宽度
private final double RECT_HEIGHT = 100; // 矩形的高度
@Override
public void start(Stage primaryStage) {
Group root = new Group();
Scene scene = new Scene(root, Color.WHITE);
// 创建矩形,并设置其属性
Rectangle rect = new Rectangle(RECT_WIDTH, RECT_HEIGHT);
rect.setFill(Color.RED);
// 将矩形添加到Group中
root.getChildren().add(rect);
// 获取屏幕的宽度和高度
Rectangle2D screenBounds = Screen.getPrimary().getVisualBounds();
double screenWidth = screenBounds.getWidth();
double screenHeight = screenBounds.getHeight();
// 计算矩形的位置
double rectX = (screenWidth - RECT_WIDTH) / 2;
double rectY = (screenHeight - RECT_HEIGHT) / 2;
// 设置矩形的位置
rect.setX(rectX);
rect.setY(rectY);
// 设置主舞台的属性
primaryStage.setTitle("Show Rectangle Centered");
primaryStage.setScene(scene);
// 显示主舞台
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
```
代码中,我们创建了一个矩形,并将其添加到Group中。然后,我们获取屏幕的宽度和高度,计算矩形的位置,并设置矩形的位置。最后,我们设置主舞台的属性,并显示主舞台。
在这个程序中,矩形的宽度和高度分别设置为200和100。您可以根据需要更改这些值。
阅读全文