当前位置: 首页 > 知识库问答 >
问题:

在Java8中(单击菜单项)打开第二阶段时出现错误消息

汤念
2023-03-14

这是我最初的帖子:

我有一个内置在NetBeans 8/Java8/JavaFX中的应用程序。(请注意,我没有SceneBuilder)

我的主应用程序窗口运行良好。我有一个菜单项,它调用以下函数来打开第二个窗口:

    @FXML
    private void openChildWindowAlt() throws Exception {

        Group root = new Group();
        Stage stage = new Stage();

        AnchorPane frame = FXMLLoader.load(getClass().getResource("fxml_childWindow1.fxml"));
        root.getChildren().add(frame);
        Scene scene = new Scene(root);

        stage.setScene(scene);
        stage.show();

    }

当我选择菜单按钮时,我的第二个阶段按预期显示,但出现以下异常:

线程“JavaFX应用程序线程”java中出现异常。lang.IllegalArgumentException:null源

at java.util.EventObject.<init>(EventObject.java:56)
at java.awt.AWTEvent.<init>(AWTEvent.java:337)
at sun.awt.UngrabEvent.<init>(UngrabEvent.java:48)
at javafx.embed.swing.SwingNode$10.handle(SwingNode.java:414)
at javafx.embed.swing.SwingNode$10.handle(SwingNode.java:410)
at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218)

at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:49)
at javafx.event.Event.fireEvent(Event.java:204)

....还有很多很多。。。希望这足够有人帮忙。

我还尝试了以下方法,结果也是一样:

@FXML私有空openChildWindow()抛出异常{

Stage stage = new Stage();

AnchorPane root = new AnchorPane();

TabPane myTabPane = new TabPane();

Tab tab1 = new Tab("blue");
Tab tab2 = new Tab("purple");

myTabPane.getTabs().addAll(tab1,tab2);

root.getChildren().add(myTabPane);
stage.setScene(new Scene(root,1200,800));
stage.show();

}

发布上述内容后,我回到应用程序并意识到我不仅在打开这些窗口时得到这个异常,而且在任何菜单项的任何点击时,无论菜单项做什么。

有什么想法吗?

谢谢

-阿黛娜

共有1个答案

茹建茗
2023-03-14

我的猜测是,你使用了SwingGutilities。调用器。这不适用于JavaFX。在那里你应该使用平台。稍后运行。

 类似资料:
  • 我想我的问题以前已经回答过很多次了,但是我找不到确切的我的案例。 我有一个垂直菜单和子菜单,我想显示子菜单,只有当父菜单被点击(不是悬停),一次只显示一个子菜单,在点击菜单的某个地方后,我想要子菜单消失。 这就是我现在得到的--它基于现在的悬停。我试着把a:hover改成类似a:active的东西,但它并不能很好地工作(我在CSS方面不是很好)。 有谁知道吗?

  • 在我的应用程序中,我有一个活动,其中包含一个FrameLayout。在这个FrameLayout中,有一个片段,包含一个ToolBar和一个RecyclView。 在这个工具栏中,我有一个搜索按钮,它应该在项目单击时启动活动。但是,当我尝试使用onOptionsItemSelected时,应用程序会成功构建和安装,但当我尝试点击该按钮时,什么也没发生。Logcat也没有说什么。 能告诉我我做错了什

  • 我有一个带有页眉和页脚的主JSP页面,而页面的内容位于另一个JSP页面中。我想点击菜单项并通过加载链接页面 我做什么: 这是index.jsp: 如果我点击第二个链接,我想包括page.jsp,只包含网页的中心部分的代码

  • 当第二次打开我的SupportMapFragment(Android maps v2)时(调用setContentView),我得到以下错误: 我不知道这个错误是什么意思。有人能解释一下吗?

  • 这是点击事件。 这是xml 结果将显示在片段中,但抽屉菜单仍然显示。我该怎么做才能关闭它?任何人都给我建议,如何解决这个问题,任何帮助非常感谢。谢谢你。

  • 我正在尝试单击一个菜单项,但是没有菜单项的webelements。 未单击菜单项时,web元素显示为: 单击菜单项后,Button标记就会改变。然而,菜单项的元素仍然是隐藏的。 菜单和单击后的图像在span标记中更改