GWT - 如何在DockLayoutPanel中添加空格

时间:2014-12-03 12:30:15

标签: html css gwt widget docklayoutpanel

我想在DockLayoutPanel的南部添加两个小部件,所以它将显示为:


中心小组


高度为14px的空间


高度为29px的小部件


我的问题是:如果我使用addSouth(widget, 29);则没有空格 如果我使用addSouth(widget, 43);它也没有空间,但小部件现在是43px高度 我想将小部件的边距定义为14px,但它对我没有帮助,因为小部件的边距覆盖了中心面板。
我该怎么办?我也尝试做两次addSouth,它产生了最好的结果,但它也没有预期的那样,我更喜欢只使用一个addSouth。

2 个答案:

答案 0 :(得分:0)

您可以尝试在单独的LayoutPanel中添加窗口小部件,然后将面板添加到停靠面板。在LayoutPanel内部只需从顶部指定空间。

LayoutPanel panel = new LayoutPanel();
panel.add(widget);
panel.setWidgetLeftRight(widget, 0, Style.Unit.PX, 0, Style.Unit.PX);
panel.setWidgetTopBottom(widget, 14, Style.Unit.PX, 0, Style.Unit.PX);

dockPanel.addSouth(panel, 43);

答案 1 :(得分:0)

DockPanel使用

中设置小部件之间的距离

dockPanel.setSpacing(14);

如果您只想为某个小部件设置间距,则必须使用CSS或将更高的CellHeight添加到dockPanel小部件。

dockPanel.setCellHeight(widget1, //widget1.heigth+14px);

将小部件放在单元格的底部
dockPanel.setCellVerticalAlignment(widget1, HasVerticalAlignment.ALIGN_BOTTOM);   
   

CSS:

.gwt-Label-foo {
    margin-top: 14px;
}

然后将dependentStyle添加到您的小部件(在本例中为Labelwidget.addStyleDependentName("foo");

求助于此处:Add a StyleDependetName和此处:CSS Styling of Widgets