java fx 调用窗口 始终在第一屏
时间: 2024-05-01 17:23:39 浏览: 61
JavaFX 的窗口默认是出现在主屏幕上的,如果你想让它始终在第一屏幕上,可以使用 `Screen` 类来获取第一屏幕的尺寸,然后设置窗口的位置,具体代码如下:
```java
import javafx.application.Application;
import javafx.geometry.Rectangle2D;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Screen;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Label label = new Label("Hello World");
StackPane root = new StackPane(label);
Scene scene = new Scene(root, 200, 100);
primaryStage.setScene(scene);
// 获取第一屏幕的尺寸
Rectangle2D primaryScreenBounds = Screen.getPrimary().getVisualBounds();
double screenWidth = primaryScreenBounds.getWidth();
double screenHeight = primaryScreenBounds.getHeight();
// 设置窗口的位置
primaryStage.setX(0);
primaryStage.setY(0);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
```
在上面的代码中,我们使用 `Screen.getPrimary()` 方法获取第一屏幕的信息,然后通过 `getVisualBounds()` 方法获取它的尺寸,最后通过 `setX()` 和 `setY()` 方法将窗口设置在第一屏幕的左上角。
阅读全文