Vaadin Designer:网格布局无法使用?

时间:2017-04-27 11:49:35

标签: vaadin vaadin8

我发现Vaadin Designer中的网格布局非常错误。

问题:有人在那里使用它吗?你有什么提示吗?

背景:我正在将一个应用程序从ASP.NET移植到Vaadin。 Visual Studio中有大量表单通过HTML表格进行布局(参见屏幕截图)。

我面临的一些问题:

  • 在网格布局中移动标签和字段后,我突然在设计源中获得了colspan / rowspan,如<column rowspan="7"></column>,当发生这种情况时,它的游戏结束了
  • 我无法插入或删除行或列
  • rowspan / colspan属性在Designer属性
  • 中不可见
  • 我无法选择多个组件(因此不会批量更改属性,例如样式,宽度,高度等。)
  • 我无法定义列宽和行高

enter image description here

2 个答案:

答案 0 :(得分:4)

这是关于Vaadin框架和布局的更多问题。您可以在文档网站https://vaadin.com/docs/-/part/framework/layout/layout-overview.html中找到有关可用布局的一般信息。我认为GridLayout不是创建图像中呈现的布局类型的最佳选择。相反,我会使用FormLayout,VerticalLayout和Horizo​​ntalLayout的组合。这是实现灵活布局的最简单方法。如果您想要更多控制,则可以开始将VL和HL切换为CssLayouts。

遗憾的是,Vaadin Designer中的GridLayout编辑支持并不支持GridLayout的所有可能功能。我建议要么在声明中进行详细的调整,要么使用Java。

我迅速提出了一个类似布局的例子:https://gist.github.com/ripla/d06d35249ffc4859e7b280425c1e92eb。我建议你也检查一下ResponsiveForm模板的另一种方法。

最后,如果您有任何错误报告或功能请求,请将问题提交至https://github.com/vaadin/designer-issues/issues

答案 1 :(得分:-2)

最终我决定使用JFormDesigner作为我的主要视觉设计师,因为它非常快速和稳定,可以毫不费力地处理大型/复杂的布局。 JGoodies FormLayout很好地映射到Vaadin GridLayout。

JFormDesigner从设计中生成Java类。我写了一个使用该类生成Vaadin Designer html的生成器。例如,JLabel映射到Vaadin标签等。所有面板都使用FormLayout,如果它们只包含一行或一列,我将它们映射到水平/垂直布局。多列/行布局转换为网格布局,实际上到目前为止工作得很好。

Vaadin Designer无法再打开大文件,但应用程序会愉快地解析并显示它们。

enter image description here