我正在用 gwt 迈出第一步来创建一个简单的网站。我正在尝试使用 gwt 平台和 gwt 设计器来创建布局。该站点非常简单,以至于许多页面具有相同的布局,并且仅在中间的内容上有所不同,因此我有一个“绝妙”的想法:您为什么不以复合的形式创建一个总体布局并添加这个复合的中间是一个简单的面板,所以你可以在那里添加每个页面的不同之处。我创建了复合材料并在其中放置了一个简单面板,但即使我公开了小部件,gwt 设计器也不允许我在创建其他 ui-binder 视图时在此面板中添加任何其他小部件。我忘记了什么吗?多谢
问问题
142 次
2 回答
0
如果你想在 UiBinder 中使用一个类似于面板的Composite ,你必须为它创建一个自定义元素解析器,但问题是在 GWT 中没有公共 API 来执行此操作(截至 2.4.0) . 也许gwt-customuibinder可以帮助解决这个问题。另一种方法是实现HasWidgets,因为有一个内置的解析器。
于 2012-01-22T11:00:25.153 回答
0
我不确定您是否应该Composite
为此尝试创建自己的小部件。您所描述的正是为此DockLayoutPanel
而创建的。基本上,您需要一个(相对)常量north
(可能是徽标,可能是导航),south
(某种页脚),也许east
/west
用于侧边栏或您拥有的东西,以及center
更改以显示“当前页面”。有很多DockLayoutPanel
以这种方式使用的示例——甚至Javadoc也有一个很好的示例。您可以轻松地将面板添加到 中center
,并将该面板用作“主面板”。
如果您想创建自己的Composite
小部件,它可以有一些任意子小部件并供 GWT Designer 使用,那么您有很多工作要做。
于 2012-01-22T01:05:42.410 回答