当我添加 Label
到我的GridLayout
在我的 Vaadin 7 app,显示失败。我将标签传递给 addComponent
方法。这适用于其他 Layout
实现,但不是 GridLayout。
最佳答案
将宽度设置为未定义
向 GridLayout 添加 Label 是一种特殊且烦人的情况。 Discussed在论坛中。从技术上讲是“功能”,而不是错误。
标签的宽度默认设置为 100%。在 GridLayout 中,标签需要具有“未定义”宽度。
这一行将解决您的问题:
myLabel.setSizeUndefined();
辅助方法
我经常使用 GridLayout 在 Vaadin 中创建专业且有吸引力的布局。这种对 GridLayout 中的 Label 的烦恼让我很生气,所以我创建了这个方便的方法。
static public Label makeLabelSizeUndefined ( String caption )
{
Label label = new Label( caption );
label.setSizeUndefined();
return label;
}
示例用法:
Label phoneLabel = WidgetHelper.makeLabelSizeUndefined( "Phone Number : " );
关于java - 标签在 Vaadin 的 GridLayout 上消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27699286/