JavaFx:如果我想在initialize()之后、场景显示之前做一些事情,我该如何实现?

2023-12-02

我想做一些事情,在控制器的initialize()方法完成之后,但在场景显示之前。在场景显示之前是否会调用任何方法?我想在该方法中添加一些代码。

FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("sample.fxml"));
AnchorPane pane = loader.load();
Scene gameScene = new Scene(pane);
//I load a secne above,the I will get the controller,set some properties,then,use the properties to read a file before the secene show.
GameUIController controller = loader.getController();
controller.setGameFileLoacation("game1.txt");//I set a property here.I want to use it to read game file,and load game,set some necessary UI.
primaryStage.setScene(gameScene);//this tow statement will show the scene.
primaryStage.show();

我无法将代码放入initialize()方法中,因为它会在加载fxml文件时调用(当我尚未获取控制器时)。那么,我该怎么办?

非常感谢 !


我找到的一种解决方案

 primaryStage.addEventHandler(WindowEvent.WINDOW_SHOWING, new  EventHandler<WindowEvent>()
    {
        @Override
        public void handle(WindowEvent window)
        {
            //Your code 
        }
    });

该事件发生在窗口显示之前。doc link

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaFx:如果我想在initialize()之后、场景显示之前做一些事情,我该如何实现? 的相关文章

随机推荐

  • 如何将 Thunderbird 扩展与 Lightning 集成

    我目前正在为一个项目进行初步研究 如果可行的话 该项目将包含带有 Lightning 集成的 Thunderbird 扩展 我的问题是这样的 如何使用 Thunderbird 扩展以编程方式更改 Lightning 中的 CSS 具体来说
  • Rails 2.3.9 查询参数的编码

    是否可以让rails 将查询参数解码为utf8 如果我有类似 foo param 的东西 我尝试访问控制器中的参数 该参数被编码为 ASCII 8BIT 这会导致很多事情被破坏 因为我们的许多其他字符串都是用 UTF 8 编码的 而 rub
  • 获得授权属性的许可?

    我已经实现了我自己的Authorize属性 我注意到当我使用时它会查询以检查权限 Authorize 有什么方法可以获取该权限并在应用该权限的当前控制器中使用它Authorize属性而无需重写和重新查询控制器中的代码 是的你可以 如果您将
  • iOS 8 下不显示键盘

    当专注于我的应用程序的文本字段时 它们都无法调出键盘 我无法输入任何字母 不过iOS 8之前还可以 我尝试旋转屏幕 发现键盘显示在屏幕范围之外 检查视图框架 它是1024 768 似乎是正确的 最后发现是模拟器的问题 不是iOS 8的bug
  • 无法转换为尺寸:膨胀布局时类型=0x1 [重复]

    这个问题在这里已经有答案了 我的 XML 文件
  • 正则表达式 - 如何用 PHP 替换字符串的最后 3 个单词

    尝试将最后 3 个单词封装在 span tag str Lorem ipsum dolor sit amet h2 preg replace w s w s w span 1 span str 这里是 h2 preg replace w s
  • 使用 Pyspark 进行虚拟编码 [重复]

    这个问题在这里已经有答案了 我希望使用 Pyspark 语法将分类变量虚拟编码为数值变量 如下图所示 我读入这样的数据 data sqlContext read csv data txt sep header true 在 python 中
  • 是否需要通过 TCP 进行应用程序级重传和确认?

    我有以下疑问 1 TCP 是否保证数据包的传送 因此如果使用的传输协议是 TCP 则是否需要应用程序级重传 假设我已经在客户端和服务器之间建立了 TCP 连接 并且服务器向客户端发送消息 然而 客户端离线并仅在 10 小时后返回 那么 TC
  • 为管理仪表板创建私有路由时出错

    我尝试使用下面的代码来私有路由管理仪表板 我正在使用react router dom 6 2 2 我需要帮助来找出只能由管理员访问的私人路线 我尝试了 stackoverflow 中所有现有的解决方案 app js
  • 打字稿错误属性在类型上不存在

    我是 angularjs 2 和 ionic 2 的新手 我正在使用带有 Validators FormControl 和 FormGroup 的 angularjs 表单 当我使用 ionicserve lab 执行项目时 一切都很好 但
  • qt 错误:未定义对“线程 vtable”的引用

    我有代码 include
  • 如何通过 System.setProperty() 启动多个版本的 Geckodriver

    我不知道我是否在监督某些事情 但是是否可以在同一个 JVM 中使用多个 geckodriver 版本 问题在于 System setProperty webdriver gecko driver path of the geckodrive
  • 将 scrapy 项目导出到不同的文件

    我正在从 moocs 上抓取评论 就像这样one 从那里我可以获取所有课程详细信息 其中 5 个项目和每个评论本身的另外 6 个项目 这是我的课程详细信息的代码 def parse reviews self response l ItemL
  • 如何以编程方式区分箭头函数和常规函数?

    之间没有明显的区别箭头函数 and a 常规功能 toString call function object Function toString call gt object Function or console dir function
  • 无法从上下文对象继承?

    我试图创建一个继承自上下文对象的对象 但是在从我继承的对象调用函数时 浏览器 Chrome 声明未捕获的类型错误 非法调用 这是基本代码 http jsfiddle net adrianh BKYfv 1 var c document ge
  • 如何将包含 Unicode 代理项对的 JSON 编码数据转换为字符串?

    所以我试图获取使用 unicode 指示器的数据并使其使用表情符号进行打印 目前它在txt中 文件 但我稍后会写入 Excel 文件 所以无论如何 我收到一个错误 我不知道该怎么办 这是我正在阅读的文字 Thanks UglyGod ud8
  • 如何处理 Google App Engine app.yaml 中的尾部削减

    我试图在这里回答这个问题时遇到了这个问题 提供 PHP 文件时删除 PHP 文件扩展名关于如何在 Google App Engine 的 app yaml 中路由某些请求 但我无法弄清楚如何使用单个 app yaml 正则表达式来映射可能有
  • 如何从 sidekiq 队列中删除特定类别的作业?

    我不小心在 Sidekiq 中排队了一堆作业 我不想擦除整个 Redis 存储 并将所有 Sidekiq 数据和排队作业重置为零 但我想删除可以由给定类识别的所有排队作业 我该怎么做 这些答案很有帮助 但没有回答我原来的问题 这些解决方案可
  • Content_main.xml 丢失

    我是 Android Studio 的新手 按照developer android提供的教程 我创建了一个新项目 他们要求创建一个空白活动 但由于没有这样的活动 我使用了空活动作为模板 然后教程说res layout文件夹里面会有一个con
  • JavaFx:如果我想在initialize()之后、场景显示之前做一些事情,我该如何实现?

    我想做一些事情 在控制器的initialize 方法完成之后 但在场景显示之前 在场景显示之前是否会调用任何方法 我想在该方法中添加一些代码 FXMLLoader loader new FXMLLoader loader setLocati