首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GroovyFX中的视图导航

GroovyFX中的视图导航
EN

Stack Overflow用户
提问于 2012-10-18 20:12:42
回答 1查看 811关注 0票数 1

我想调整一个MVVM应用程序到GroovyFX。我对Groovy和GroovyFX本身都没有太多的经验,也没有那么多的信息可用。

设计由一个主窗口组成,里面有一个面板。比方说,当用户按下按钮时,应用程序将删除中央面板子面板,并插入符合目标视图的新“节点树”。

让我们看看一些代码

代码语言:javascript
复制
import groovyx.javafx.GroovyFX
import groovyx.javafx.SceneGraphBuilder
import static groovyx.javafx.GroovyFX.start
import javafx.fxml.FXMLLoader
import javafx.scene.layout.StackPane;

def controller = new MainWindowController()
def loader = new FXMLLoader(getClass().getResource("gui.fxml"));
def myPane = loader.load();

start
{
    stage(title: "Tasks!", x: 100, y: 100, width: 400, height: 400, visible: true,
        style: "decorated", onHidden: { println "Close"})
    {
        scene(fill: GROOVYBLUE)
        {
            vbox(spacing: 10, padding: 10)
            {
                button(text:"Show!",onAction:{ controller.activityPanel.getChildren().clear() controller.activityPanel.getChildren().add(myPane)})
                controller.activityPanel=stackPane()
            }
        }
     }
}

当用户按下按钮时,位于主窗口内的stackPane将接收到myPane的内容,并显示这个“视图”。问题是

  1. 如何通过代码定义这个视图"myPane“?我只找到了fxml解决方案。
  2. 如果fxml是唯一的方法,那么您知道如何实例化控制器类并使用GroovyFX绑定其成员的示例代码吗?

这个想法类似于jfx流项目,但在GroovyFX中。

EN

回答 1

Stack Overflow用户

发布于 2012-11-12 23:07:31

第二,你可以.

代码语言:javascript
复制
fxml resource("/FXMLDemoInline.fxml"), {
    buttonCSSID.onAction {
        labelCSSID.text = "Clicked - CSS";
    }
    buttonFXID.onAction {
        labelFXID.text = "Clicked - FXML";
    }
}

我是从演示中

对于#1,可以在build(Script)构建器中使用GroovyFX实例方法。只需像在GroovyFX的start方法中那样编写脚本,并引用脚本类。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12962956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档