gpt4 book ai didi

JavaFX - 如何设置默认 Activity 控件

转载 作者:搜寻专家 更新时间:2023-10-31 08:27:49 28 4
gpt4 key购买 nike

我有一个单窗口 JavaFX 应用程序,它是根据 JavaFX 教程之一创建的。

我正在通过以下函数设置新窗口内容:

private Initializable replaceSceneContent(final String fxml) throws Exception {

// wczytanie fxml
FXMLLoader loader = new FXMLLoader();
InputStream in = Main.class.getResourceAsStream(fxml);
loader.setBuilderFactory(new JavaFXBuilderFactory());
loader.setLocation(Main.class.getResource(fxml));
AnchorPane page;
try {
page = (AnchorPane) loader.load(in);
} finally {
in.close();
}

Scene scene = new Scene(page, w, h);
stage.setScene(scene);
return (Initializable) loader.getController();
}

但我想从这个 fxml 文件中选择一个默认激活的 TextField。这该怎么做?我试图在 Controller 的初始化方法中调用 requestFocus 方法,但它没有用。我没有在 AnchorPane 类中的 TextField 类中找到任何合适的属性(AnchorPane 是 fxml 控件树的根元素)。

最佳答案

尝试用 PlatForm.runlater 封装你的 requestFocus() 调用

Platform.runLater(new Runnable() {
public void run() {
textField.requestFocus();
}
});

关于JavaFX - 如何设置默认 Activity 控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13351959/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com