javaFX中切换场景

2024-01-01

当选择 menuItem 时尝试关闭当前场景并打开另一个场景时,我遇到问题。我的主要阶段编码如下:

public void start(Stage primaryStage) throws Exception {
   primaryStage.setTitle("Shop Management");
   Pane myPane = (Pane)FXMLLoader.load(getClass().getResource
("createProduct.fxml"));
   Scene myScene = new Scene(myPane);        
   primaryStage.setScene(myScene);
   primaryStage.show();
}

然后在 createProduct.fxml 中,当 menuItem 为 onclick 时,它将执行以下操作:

public void gotoCreateCategory(ActionEvent event) throws IOException {
    Stage stage = new Stage();
    stage.setTitle("Shop Management");
    Pane myPane = null;
    myPane = FXMLLoader.load(getClass().getResource("createCategory.fxml"));
    Scene scene = new Scene(myPane);
    stage.setScene(scene);
    stage.show();
}

它确实打开了createCategory.fxml。但是,前一个面板(createProduct.fxml)不会关闭。我知道有一个叫做 stage.close() 的东西可以做到这一点,但我不知道在哪里实现它,因为我没有从一开始就从 main 传递场景。我想知道我应该如何解决这个问题。

提前致谢。


您必须对启动方法进行一些更改,例如..

public void start(Stage primaryStage) throws Exception {
   primaryStage.setTitle("Shop Management");

   FXMLLoader myLoader = new FXMLLoader(getClass().getResource("createProduct.fxml"));

   Pane myPane = (Pane)myLoader.load();

   CreateProductController controller = (CreateProductController) myLoader.getController();

   controller.setPrevStage(primaryStage);

   Scene myScene = new Scene(myPane);        
   primaryStage.setScene(myScene);
   primaryStage.show();
}

你的 CreateProductController.java 将是,

public class CreateProductController implements Initializable {

    Stage prevStage;

    public void setPrevStage(Stage stage){
         this.prevStage = stage;
    }

    @Override
    public void initialize(URL location, ResourceBundle resources) {
    }

    public void gotoCreateCategory(ActionEvent event) throws IOException {
       Stage stage = new Stage();
       stage.setTitle("Shop Management");
       Pane myPane = null;
       myPane = FXMLLoader.load(getClass().getResource("createCategory.fxml"));
       Scene scene = new Scene(myPane);
       stage.setScene(scene);

       prevStage.close();

       stage.show();
    }

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

javaFX中切换场景 的相关文章

  • 如何将变量的全部内容发送/导出到文本文件/xml 文件/剪贴板?

    我想将实例的内容 最好以树形形式 发送给某人 打印屏幕是不行的 因为类太复杂了 您需要将输出转回实例吗 在这种情况下 其他答案都是正确的 如果您只想手动检查实例的内容 理想情况下您的类都将实现toString 你可以将其重定向到一个文件 如
  • 如果列名不同,则一对多休眠连接

    我有三个具有以下结构的表 合同 gt Contract id 主要 customer company id Vendor company id 公司 gt Company id 主要 创建日期 创建者 Company Timeline gt
  • ScheduledThreadPoolExecutor如何在特定时间运行任务?

    特别是 它是否像这样在内部实现了 while true 循环 while System currentTimeMillis lt timeToRunTask Thread sleep 1000 doTask From http grepco
  • 单元测试组合服务方法

    我正在为一个类编写 junit 单元测试 该类使用以下方法实现公开的接口 public Set
  • 在 Java 中从 SOAPMessage 获取原始 XML

    我已经在 J AX WS 中设置了 SOAP WebServiceProvider 但我无法弄清楚如何从 SOAPMessage 或任何 Node 对象获取原始 XML 下面是我现在获得的代码示例 以及我试图获取 XML 的位置 WebSe
  • 迁移到Java 9或更高版本时是否需要切换到模块?

    我们目前正在从 Java 8 迁移到 Java 11 但是 升级我们的服务并没有我们预期的那么痛苦 我们基本上只需要更改我们的版本号build gradle文件和服务都顺利启动并运行 我们升级了库以及使用这些库的 微 服务 到目前为止没有问
  • OpenNLP 与斯坦福 CoreNLP

    我一直在对这两个包进行一些比较 但不确定该往哪个方向走 我简单地寻找的是 命名实体识别 人 地点 组织等 性别识别 一个不错的训练 API 据我所知 OpenNLP 和斯坦福 CoreNLP 提供了非常相似的功能 然而 Stanford C
  • Kafka Java Consumer 已关闭

    我刚刚开始使用卡夫卡 我面临着消费者的一个小问题 我用Java写了一个消费者 我收到此异常 IllegalStateException 此消费者已关闭 我在以下行中遇到异常 ConsumerRecords
  • 需要正则表达式帮助

    我正在尝试替换两次或多次出现的 br like br br br 标签与两个一起 br br 具有以下模式 Pattern brTagPattern Pattern compile lt s br s s gt s 2 Pattern CA
  • 如何使用 swagger-codegen-plugin (maven) 生成客户端代码?

    我需要使用 swagger codegen plugin for maven 在 eclipse 中生成服务器存根代码 你能帮忙怎么做吗 以及需要什么配置 在 pom xml 中 我找到了这个答案 您只需要像下面这样更改 pom xml 即
  • 是否有最新的 Facebook Java SDK? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 好像没找到最近更新的 如果没有 是否有一个好的 Java 库来执行与 Facebook 的 API 交
  • MongoDB java 驱动程序 3.0 在身份验证时无法捕获异常

    我超级卡住o 0 在尝试通过 Java 驱动程序进行身份验证时 存在捕获异常的问题 正如你可能会看到的Throwable类不工作 private MongoClient mongoClient private MongoDatabase m
  • 使用 HTTPServletRequestWrapper 包装请求参数

    我有一个可以验证 授权 REST 调用的过滤器 该过滤器需要访问请求参数 因此我为此编写了一个自定义 HTTPServletRequestWrapper import java util Collections import java ut
  • Java8:流映射同一流中的两个属性

    我有课Model带有以下签名 class Model private String stringA private String stringB public Model String stringA String stringB this
  • 如何检查日期字符串的有效性?

    在我的项目中 我需要检查日期字符串是否计算为正确的日期对象 我决定允许 yyyy MM dd 和日期格式 年 月 日 和 年 月 日 小时 分钟 我如何检查它们是否有效 我的代码为 1980 01 01 和一些奇怪的日期 如 3837 05
  • Android项目中使用java获取电脑的IP地址

    我在用ksoap2 android http code google com p ksoap2 android 我需要使用java获取IP地址 这样我就不必每次都手动输入它 我所说的 IP 地址是指 例如 如果我这样做ipconfig使用命
  • 在 Freemarker 模板中检查 Spring 安全角色和记录的用户名

    有谁知道 freemarker 标签来检查 freemarker 文件中的 spring 安全角色和用户名 我从网络上的几个资源中发现以下代码将打印登录的用户名 但它没有打印用户名 而是打印 登录为
  • CXF:通过 SOAP 发送对象时如何排除某些属性?

    我使用 Apache CXF 2 4 2 当我将数据库中的某个对象返回给用户时 我想排除一些属性 例如密码 我怎样才能做到这一点无需创建临时的班级 有这方面的注释吗 根据 tomasz nurkiewicz 评论我应该使用 XmlTrans
  • Android Google 地图无法在当前主题中找到样式“mapViewStyle”

    添加谷歌地图视图时 我扩展了MapView 使用xml编辑器将其添加到活动中 并将我的谷歌地图api密钥手动添加到布局xml文件中 我的权限在清单文件中允许互联网 我想知道的是 在 xml 编辑器中 我收到错误 无法在当前主题中找到样式 m
  • 使用 AmazonSNSClient 发送短信时的授权

    aws 官方文档如何发送短信 http docs aws amazon com sns latest dg sms publish to phone html使用 java 中的 aws SDK 非常简单 但是 当发送如底部示例所示的消息时

随机推荐

  • 使用转换器时如何引用复合组件内的组件

    我有一个复合组件 主要由 selectManyCheckbox 组件组成 因为它应该以通用方式设计 所以我从调用级别传递 selectItems ajax 处理等
  • SQLAlchemy、Psycopg2 和 Postgresql COPY

    看起来 Psycopg 有一个自定义命令来执行COPY http www postgresql org docs current static sql copy html 使用cursor copy from 的psycopg2 COPY
  • 如何添加推送通知分析

    我正在开发渐进式网络应用程序 我想实现推送通知的分析 如何添加推送通知分析 以便我能够跟踪和记录有多少人点击了通知 以及有多少人在不点击通知的情况下关闭了该通知 我编写了一小段代码来使用 Google Analytics 进行分析 并且效果
  • 如何将php文件调用到div中?

    我正在尝试仅重新加载特定的 div captcha html just as test works well 因为div内容要大得多 所以我尝试了 captcha html doesn t work 如何将 php 文件中的代码调用到 di
  • 比较并查找 R 中的重叠范围

    我有两个表 每个表都包含数字范围 一个表是另一个表的细分 我想在第一个表中创建二进制列 显示它们重叠的范围 例如 df1 start1 end1 1 6 6 8 9 12 13 15 15 19 19 20 df2 start2 end2
  • 通用非静态方法的用例有哪些?

    在类本身不具有泛型的情况下 拥有非静态方法泛型的有效用例是什么 Example public class A
  • 找到数字序列中第一个缺失的数字

    这是我尝试找到这个问题的解决方案的第二天 我有一个数组 datas datas 0 8000 datas 1 8001 datas 2 8003 datas 3 8004 我必须找到从 8000 开始的第一个缺失的数字 在本例中是 8002
  • jqGrid DatePicker 过滤无需按 Enter 键

    我正在构建我的第一个 ASP NET MVC 3 应用程序并使用 jqGrid 我的列之一 风味创建 是一个日期列 我想使用 DatePicker 过滤该列上的网格 当前发生的情况如下 用户单击列标题过滤器框 显示日期选择器 然后用户选择年
  • 默认模型绑定抛出“没有为此对象定义无参数构造函数”

    我有一个表格 我们想在其中为单个客户输入多个交易 表单的视图模型如下所示 public class TradeSpendingEntryViewModel public TradeSpendingEntryViewModel Records
  • 连接到 wcf 管道

    有没有办法检查wcf方法调用 我的意思是任何与 ASP NET 中的 HttpModule 相同的东西 我想在任何方法调用之前执行一个方法 WCF 具有非常可扩展的体系结构 可以拦截和自定义许多 WCF 功能来完成您自己的事情 对于您的情况
  • Windows 上的 node-gyp 安装失败

    节点版本 节点 v 和npm v 节点 v8 11 2 npm v6 0 1 Platform uname a UNIX 或systeminfo findstr B C OS Name C OS Version C System Type
  • ctypes 上的指针以在 Python 3.1 上使用 OpenCV

    我尝试通过 ctypes 在 Python 3 1 上使用 OpenCV 但我不知道如何表示指针 例如 如果我想加载图像并打印她的第一个像素的内容 我将用 C 编写 include
  • PowerShell - 获取被调用应用程序的进程ID

    我需要调用外部应用程序 即 Notepad 然后获取被调用应用程序的进程ID Get Process Notepad 将返回所有记事本进程 我想做类似的事情 objApp c Notepad exe WHILE get process ID
  • 是否可以在一个 UIlabel 中设置不同的字体?

    我有一个像 这是一个好苹果 这样的字符串 显示在我的 UIlabel 上 我想用不同的字体设置 好 这个词 看起来就像 这是一个good apple 看一眼NS属性字符串 https developer apple com library
  • Hyperledger Fabric:错误:无法组装交易:ProposalResponsePayloads 不匹配

    尝试调用链码时解决以下错误的步骤是什么 Error could not assemble transaction ProposalResponsePayloads do not match proposal response version
  • Pyspark 替换 Spark 数据帧列中的字符串

    我想通过替换子字符串对 Spark Dataframe 列执行一些基本的词干提取 最快的方法是什么 在我当前的用例中 我有一个想要标准化的地址列表 例如这个数据框 id address 1 2 foo lane 2 10 bar lane
  • SqlBulkCopy 不起作用

    我有一个DataSet从 Excel 工作表填充 我想使用 SQLBulkCopy 来插入记录Lead Hdr表在哪里LeadId is PK 我在执行以下代码时遇到以下错误 给定的 ColumnMapping 与中的任何列都不匹配 来源或
  • 异步函数声明需要 ';'在 Internet Explorer 中

    我有一个适用于 Chrome 和 Firefox 的异步函数声明 但在 Internet Explorer 中出现以下错误 SCRIPT1004 预期为 文件 javascriptFile js 行 5 第 7 列 这是简化版 这两个函数位
  • 如何在 Sphinx .rst 文件中输出配置值?

    我有以下内容conf py def setup app app add config value base url http localhost 2000 True 如何将其放入我的 rst 文件中 我写了这个 base url my ap
  • javaFX中切换场景

    当选择 menuItem 时尝试关闭当前场景并打开另一个场景时 我遇到问题 我的主要阶段编码如下 public void start Stage primaryStage throws Exception primaryStage setT