我有一个带有fxml文件的javaFX应用程序。我不知道如何适应其他屏幕。也就是说,我有1920X1080和应用程序是在全屏,并在1366X768它削减它几乎2倍。
我的启动类:
public class FrameStart extends Application {
static Logger LOGGER;
static {
try(FileInputStream ins = new FileInputStream("src/main/resources/log.config")) {
LogManager.getLogManager().readConfiguration(ins);
LOGGER = Logger.getLogger(FrameStart .class.getName());
} catch (IOException e) {
LOGGER.log(Level.WARNING,"Error ", e);
}
}
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage stage) {
try {
FXMLLoader loader = new FXMLLoader();
URL xmlUrl = getClass().getResource("/Scene.fxml");
loader.setLocation(xmlUrl);
Parent root = loader.load();
stage.setTitle("App");
stage.getIcons().add(new Image(FrameStart .class.getClassLoader().getResourceAsStream("logo.png")));
stage.setScene(new Scene(root));
stage.show();
} catch (Exception e) {
LOGGER.log(Level.SEVERE,"Error", e);
}
}
}
I don't really understand how to adapt
1条答案
按热度按时间kzipqqlq1#
这样做的一种方法:
创建一个响应式的设计。
我建议你使用Scenebuilder。使用布局窗格(例如BorderPane)作为 Package 器。在其他版面中创建嵌套的版面。在应响应的元素中使用值为“计算大小”的首选大小。每个未定义其大小的元素都不会响应。
您需要查看元素的属性。有像 Package 的东西(例如。文本)、对齐等。