过去 3 年在学校等场合使用 Swing 后,我决定尝试一下 JavaFX。借助新的场景生成器和 NetBeans 7.2,到目前为止,一切都非常顺利。
我想做的下一步是将我的一个小项目转换为 JavaFX。然而问题之一是该项目使用 MVC 架构。基本上我有一个带有 Toolbar
的 JFrame
、一个 JMenuBar
以及一个空的 JPanel
。
JPanel
用于显示一个 View ,它是使用 NetBeans 的 GUI Builder 构建的 JPanel
。这允许我导航到不同的 View ,并且每个 View 都是一个独立的组件。
我的问题如下:有没有办法在Scene
中显示Scene
?或者实现与 JPanel
内的 JPanel
类似的结果,或在用户控件内实现用户控件(对于 .Net 用户)
基本上,我想在图片的灰色区域显示另一个场景。
最佳答案
当我进来时,我也有同样的 react :你想要一个 Node(乍一看感觉不对)。 Node 基本上是可以包含自身的根组件(很像 JPanel),如果您正在寻找“根组件”,您可以更改舞台上的场景,但它将扩展 Node 以实现 MVC 基础知识。
http://docs.oracle.com/javafx/2/api/javafx/scene/Node.html
我确信您可能会喜欢并交换舞台上的场景(这是完全可行的),但从我的 Swing 背景来看,Node 的表现更自然。 Caviat:我发现我编写了更多的框架和抽象来使其适合我(用组等包装类......),但它确实起到了作用。
我希望找到一种更好的方法,对于我基于“模块”的项目,我最初使用场景,但发现它完全受到限制。节点允许更多的动态内容。
祝你好运。
编辑:回答后阅读文档我真的应该说“父级”,但 Node 的直接子类都可以用作容器)
关于java - 使用 JavaFX 的场景或自定义控件中的场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11707123/