第一:我很震惊,不得不问这个问题。在文档中没有任何地方解释了应如何使用新的“WindowManager” ...我一直在围绕此进行数小时的学习,但我仍然没有一种令人满意的方法来完成如此琐碎的事情:
def vName = 'Error'
if (!app.views[vName]) { //I just want to create it once, otherwise I'd just change it's model and want to show() it!
buildMVCGroup(vName, vName, errorCode: 500, message: "fail detected ;-)") //ok, this indeed shows the idem (as it's an "frame(/**/show: true,/*...*/", but I dont want to create it each time
}
// app.windowManager.show(app.views.Error) //fails, show() want's an Window, and app.views.Error is of ErrorView type
// app.views.Error.visible = true //won't display the view
// app.views.Error.show() // there is no such method
我还需要一种很好的隐藏方式,例如:
//in controller
def view
def hideAction = {
//view.hide() //fails, no such method...
}
另一种让我感到高兴的方法是一种简单的方法,即“当用户单击OK(在ErrorView中)时,处理此MVCGroup。我今天已经在搜索和阅读示例很多时间了,但仍然想不通如何编写如此简单的应用程序流程代码...
在此先感谢您对执行此操作的任何想法,
干杯
最佳答案
对于框架-我所做的...
在我看来,我为框架命名application(name: 'login', ...
然后在我的 Controller 中app.windowManager.hide(app.windowManager.findWindow('login'))app.windowManager.show(app.windowManager.findWindow('workspace'))
所以...我确保我对所有 View 都“命名”,然后可以轻松地在窗口管理器中显示/隐藏...
您对文档的权利。我希望我正在做的也是“正确的事情”。
关于groovy - 如何在Griffon中轻松显示/隐藏 View ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4356871/