当前位置: 首页 > news >正文

【JAVAFX】controller中反射调用@FXML的点击事件失败

场景

当前有一个controller中定义的事件如

    @FXMLvoid openZhengjieWindow(ActionEvent event) {System.out.println("zhengjie");}

通过反射去调用

    public void callMethodByString(String methodSuffix) {try {Method method = this.getClass().getMethod("open" + methodSuffix+"Window");method.invoke(this);} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {System.out.println("调用方法失败: " + e.getMessage());}}

报错失败调用方法失败: sample.ControllerAutoLogin.openWodeWindow()

解决方法

把controller定义事件的参数修改为无,同时增加public声明

    @FXMLpublic void openZhengjieWindow() {System.out.println("zhengjie");}

相关文章:

  • 使用KNN预测图像
  • ECharts散点图-散点图20,附视频讲解与代码下载
  • Go语言->练习6例
  • 《算法吞噬幻想乡:GPT-4o引发的艺术平权运动与版权核爆》
  • 利用EMQX实现单片机和PyQt的数据MQTT互联
  • 【Git】项目多个分支开发、维护与优化处理 -- 还未实测 记录初
  • 嵌入式多功能浏览器系统设计详解
  • CentOS 7环境配置DHCP服务器
  • 微信小程序分页和下拉刷新
  • STM32N6570-DK ISP调试
  • 1.8空间几何与场论
  • mysql8.0版本部署+日志清理+rsync备份策略
  • 英语五大基本句型
  • 大模型性能测试
  • Rust 学习笔记:修复所有权常见错误
  • CasaOS上部署1Panel开源运维面板远程在线访问配置实操指南
  • 从零搭建微服务项目Pro(第9-1章——分布式事务管理Seata环境配置)
  • 闲鱼商品详情API接口概述及JSON数据参考
  • 僵尸进程是什么?
  • P9904 [COCI 2023/2024 #1] Labirint 题解
  • 以总理称将全面控制加沙,对伊朗保留单方面行动权利
  • NFL球员将参加洛杉矶奥运会腰旗橄榄球比赛
  • 国家发改委:城市更新项目必须建立多元化多层级资金投入机制
  • 特朗普与普京开始电话会谈,稍后将致电泽连斯基
  • 复旦兼职教授高纪凡首秀,勉励学子“看三十年才能看见使命”
  • 国家外汇管理局:4月货物贸易项下跨境资金净流入649亿美元