我可以在GWT中使用哪个小部件(主要是面板)进行自动缩放?

时间:2011-12-22 13:59:34

标签: gwt

我根据我的窗口屏幕在gwt应用程序中使用绝对面板。但我想使用可根据客户端窗口屏幕自动缩放或调整的面板。所以可能或任何面板相对而不是绝对定位?

由于 拉胡

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

SplitLayoutPanel和DockLayoutPanel很棒,但它们受到限制,因为它们只是扩展了LayoutPanel。

我建议使用LayoutPanel,因为它对于您想到的安静液体布局更灵活。

在伪代码中,你只需要。

定义你的Widget x;

定义LayoutPanel lp。

在lp中添加小部件。 (lp.add(x))这将只是放大你的小部件以适应所有屏幕,因为你还没有定义任何约束。

然后,您可以根据需要应用约束。 (BOTTOM; TOP; LEFT; RIGHT; WIDTH; HEIGHT;)

例如:TOP和WIDTH约束:

lp.setWidgetTopWidth(小部件,TOP位置,TOP单元,小部件的WIDTH,WIDTH单元)。

在这里,UNIT非常重要。如果选择PX。您的申请将 NOT 成为流动性的。因为它在不同的屏幕上是静态的。在我们公司,我们有16:9和4:3的屏幕。因此我们使用PCT单位(百分比)作为WIDTH禁令,但我们使用PX作为TOP(我们的标题对于所有屏幕都是相同的)。

如果您希望在用户放大或缩小应用程序时小部件变大,您甚至可以将EM单位应用于维度。

使用LayoutPanel的另一个好处是在运行时更改布局。您可以通过减少专用于其他小部件的空间,然后向新的小部件添加和应用约束来轻松地适应第二个小部件(以及第三个,第四个,......)。

希望这对你帮助我们有所帮助!

http://google-web-toolkit.googlecode.com/svn/javadoc/latest/com/google/gwt/user/client/ui/LayoutPanel.html