问题标签 [layoutpanels]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3751 浏览

gwt - 使用布局面板系统在 GWT 中将面板居中

在 GWT 开发者网站上,有一个示例显示了位于页面中间的面板。这是否可以使用 GWT 布局面板在页面中间固定面板?

http://code.google.com/webtoolkit/doc/latest/DevGuideUiPanels.html#LayoutPanels

0 投票
1 回答
763 浏览

css - 覆盖溢出:从 LayoutPanel 的层中隐藏

有没有办法覆盖溢出:从 LayoutPanel 的层中隐藏?这就是我所拥有的:

我无法将 ui:field 分配给图层元素,并且上面的内联样式显然不起作用。我需要为该特定图层分配溢出:可见。有什么解决方法吗?

太感谢了。

0 投票
4 回答
993 浏览

gwt - GWT TabLayoutPanel ie7 第一个选项卡折叠

我有一个从 ie7 访问的 TabLayoutPanel。我第一次查看标签时,它是折叠的~32px x 32px。如果我选择第二个选项卡,内容区域会填满,我可以返回到第一个选项卡,它看起来是正确的。我正在使用tablayoutpanel的所有祖先都是某种形式的layoutpanel。它适用于ie8和chrome。有任何想法吗?

更新:我注意到调整大小不适用于选项卡面板。只有当我在选项卡之间切换时,面板才会调整大小。当我更改浏览器窗口大小时,选项卡面板保持相同大小。第二次我更改选项卡,选项卡面板正确填充浏览器。

0 投票
1 回答
992 浏览

c# - 将表单添加到 flowlayoutpanel

我有一个应用程序,我需要能够将子表单添加到主表单。我可以在运行时轻松地将子表单添加到主表单,但是当我调整主表单的大小时,子表单不会相应地调整大小。

我想知道将子表单添加到 flowlayoutpanel 是否有助于调整大小,或者我应该只订阅主表单“resize”事件并相应地调整子表单的大小。

0 投票
2 回答
7541 浏览

java - GWT LayoutPanels 中的中间中心对齐(Alignment.MIDDLE_CENTER 等效)

如何将 LayoutPanel 放置在父 LayoutPanel 的中间中心(RootLayoutPanel、屏幕、浏览器页面)?假设内面板是固定大小的,外面板是灵活的并且会调整大小(使用浏览器窗口)。

在 Vaadin 中,它是一行命令:
(VerticalLayout)outerPane).setComponentAlignment(innerPane, Alignment.MIDDLE_CENTER);

什么是 GWT 等价物?
GWT Layout.Alignment 枚举仅提供 BEGIN END STRETCH。
不足。屏幕居中放置对于显示较小的表单、对话框、警告消息、登录屏幕等至关重要。

我在 GWT 论坛上的帖子的详细信息
谢谢

--- 更新 (27.2.2012) ---------------

要使用建议的技术 - 使用 setWidgetLeftRight() 和 setWidgetTopBottom() - 我实际上需要计算内部组件相对于外部组件的 NW 位置 (x,y),并在每次调整外部容器或内部容器的大小后执行此操作(内容高度) .

因此,如果 GWT 不支持居中,并且似乎即使在最新版本中也不支持,则涉及更多编码:

x,y 要计算为:
x = (w1 – w2) / 2
y = (h1 – h2) / 2
其中:
w1 - 外部组件宽度(可变,容易获得?)
h1 - 外部组件高度(可变,容易获得?)
w2 - 内部居中组件宽度(固定)
h2 - 内部居中组件高度(可变,取决于内容,可能难以获得)

所有最好以像素(PX?)或EM为单位。当与 % 混合时,必须进行更多的转化。

随着每个调整大小事件的发生,必须重新计算坐标(w1,h1 更改)。

随着内部内容的每次更改,都必须重新计算坐标(h2 更改)。

它几乎是变相的绝对布局(AbsolutePanel)。

CSS解决方案?我在此服务器上找到了几个示例,但没有一个标记为已解决。没有垂直和水平居中以及灵活的内部组件高度。

为什么我不喜欢基于 CSS 的布局解决方案:

  • 容易跨浏览器问题。GWT 在这里帮不了你。
  • 我认为在代码和 CSS 中混合布局是一个糟糕的设计决定。CSS 最好留给“装饰性”声明(字体大小和颜色、边距、填充)。
  • 我自己对 CSS 布局的糟糕体验;容易破解,难以调试,在你把所有东西放在一起之前有很多麻烦。最好避免。我对 GWT 寄予厚望。

我正在考虑这个基于代码的解决方案:

  • Widget 的新子类?控制板?布局?零件?(内部组件)
  • 实现 RequiresResize 期望,实现 onResize() 回调方法
  • 获得可变尺寸(w1,h1,h2)的实际值。如何?
  • 为内部组件设置新坐标。如何?

指向基于这些前提提供解决方案的任何人:)

0 投票
2 回答
709 浏览

gwt - 关于使用由 StackLayoutPanel 包装的 DataGrid 的错误

我尝试使用 DataGrid 并将其放在 stacklayoutpanel 中。当我为 ListDataProvider 提供数据时,CellTable 在浏览器中不可见,因为它位于非活动选项卡上(尽管它在 DOM 树中可见)。切换到包含 CellTable 的选项卡后,其中没有数据。如果选项卡在提供数据时处于活动状态,则表格已正确填写。由于我已使列可排序,因此如果单击排序,数据将正确显示。我希望在单击另一个原生选项卡时自动显示数据。如果我切换到使用 celltable,这将不是问题。

我知道这是 GWT 中的错误,它已在 GWT 2.5 RC 中修复。但是我的老板还不想让我使用 GWT2.5RC。我必须解决这个问题。我知道有人说 datagrid.redraw() 可以修复它。我累了,但显示很奇怪。例如,我在DataGrid中有10行,选择第二个选项卡后,调用redraw(),自动显示数据,但只有10px的块显示数据和滚动条。我必须向下滚动才能看到其他行。选项卡底部有很多空间未使用。谁能告诉我如何解决这个问题?那么我是否使用了错误的方法来修复它?我还能做些什么来解决这个问题。谁能给我一些提示。

谢谢

最好的祝福

0 投票
0 回答
250 浏览

gwt - SplitLayoutPanel 中的 GWT ScrollPanel

我在 SplitLayoutPanel 中有一个 scrollPanel,我想在用户执行应用程序应该执行的一些活动时填充日志消息。它只是尝试在 UI 页面上为用户提供记录器控制台,以查看服务器上发生的情况。我使用 CellList 用我每隔几秒轮询一次的日志消息填充滚动条。问题是在滚动面板上出现一定数量的日志消息之后,它就不再打印了。我给了最大缓冲区大小,并在达到最大限制时继续从 cellList 中删除旧项目,以避免内存不足。而且我知道它按预期工作。但不知道为什么它会停止。有什么想法吗?

0 投票
1 回答
411 浏览

css - 当我们已经有 CSS 进行布局时,为什么我们需要在 GWT 中使用布局面板?

当我们已经有 CSS 进行布局时,为什么我们需要在 GWT 中使用布局面板?

例如在 gwt 我们使用 layoutpanel 来布局 StackLayoutPanel

0 投票
1 回答
496 浏览

gwt - GwtChosen 不能很好地与 GWT LayoutPanel 和 RootLayoutPanel 配合使用

我正在使用 GwtChosen 1.1.0 和 GwtQuery 1.3.3。它似乎只适用于 RootPanel 小部件而不是 RootLayoutPanel 小部件。

无法与 RootLayoutPanel 一起使用是否是 GwtChosen 的已知限制?

下面的示例代码和屏幕截图。注意 RootLayoutPanel 示例在堆栈中隐藏了 GWTchosen 小部件的下拉菜单,因此使其无法使用。

在此处输入图像描述 在此处输入图像描述

0 投票
1 回答
284 浏览

gwt - LayoutPanel with right alignment

I'm using a layout panel with some layers. One of the layers is quite simple but I want it to have a float: right on the element. But this is actually not working because subwidgets are styled with style="postition: absolute; left: 0px; ..." which overrides the styling and so the subpanels/widgets will always be placed on the left. Any workaround for this?