【问题标题】:add swing component into javafx tab将 swing 组件添加到 javafx 选项卡中
【发布时间】:2019-02-15 22:20:03
【问题描述】:

我有一个 JavaFX 和一个单独的 Swing 项目。现在我需要将该 jframe 添加到选项卡内的 JavaFX 项目中。通过做一些研究,我知道我不能直接添加 jframe,所以我需要 SwingNode。我可以添加 jframe 而不会出现任何错误,但框架 gui 会变得非常混乱。 jfram 第一次不可见,当我将鼠标悬停在它上面时,它仅对该区域可见,除了提示弹出窗口也不可见。 下面是代码。请帮助我在 javafx 中成功添加 swing 组件。

  SyntaxTester ob = new SyntaxTester();
        SwingNode swingnode = new SwingNode();
        swingnode.setContent(ob.getEditor()); //getEditor returns jEditorPane
        tab.setContent(swingnode);

【问题讨论】:

    标签: java swing javafx jframe


    【解决方案1】:

    JFrame 带有自己的装饰,它们可能会导致问题。而不是添加 JFrame - 添加JFrame#getContentPane()

    【讨论】:

    • 将 swingnode 包裹在 BorderPane 或 ScrollPane 中。这似乎使它起作用。
    • 是的,谢谢,它适用于外观问题,现在 gui 加载清晰但提示弹出窗口仍未出现
    • 知道为什么提示弹出窗口不起作用。这是我遇到的最后一个问题。
    • 尝试向 swingnode 添加一个鼠标监听器,并通过java.awt.Component.dispatchEvent 将它们传递给 swing 组件。我不知道这是否值得麻烦:)
    猜你喜欢
    • 2017-01-28
    • 2013-02-08
    • 1970-01-01
    • 2016-10-09
    • 1970-01-01
    • 2011-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多