如何调整SmartGWT标签或HTMLFlow的大小以适应内容的大小?

3

我感觉一定是我做了什么很愚蠢的事情。我该怎样让HTMLFlow的大小根据内容自适应呢?我不需要这个动态完成,只需要在第一次创建时就可以。下面是我尝试过的两种方法(还有其他排列组合)都没有成功。我也试过使用Label,但也不行。

    HLayout layout = new HLayout();
    layout.setWidth100();
    layout.setHeight(25);

    HTMLFlow bodyTypeLabel = new HTMLFlow();
    bodyTypeLabel.setHeight(25);
    bodyTypeLabel.setContents(wrapFontFace("longer content", "verdana", "2"));

    HTMLFlow drinkLabel = new HTMLFlow();
    drinkLabel.setHeight(25);
    drinkLabel.setWidth(10);
    drinklabel.setAutoWidth();
    drinkLabel.setOverflow(Overflow.VISIBLE);
    drinkLabel.setContents(wrapFontFace("content2", "verdana", "2"));

基本上,无论使用哪种方式,宽度似乎都被设为某个不变的固定值。 最终看起来会像这样:
longer content            content2

或者

longer content2
content

在第二个例子中,“longer content”应该在一行上,因为它是与“content2”分开的标签/ HTML流。所以,我要么得到很多额外的间距,要么就会换行。这似乎应该很简单,有人可以帮帮我吗?我想让它看起来像这样:
longer content content2
1个回答

4

看起来这对我很有用:

drinkLabel.setHeight(25);
drinkLabel.setWidth(10);
drinkLabel.setOverflow(Overflow.VISIBLE);
drinkLabel.setContents(wrapFontFace(drinkContent, "verdana", "2"));
drinkLabel.setWrap(false);
drinkLabel.setExtraSpace(5);

那最后一部分是因为它似乎会从内容中删除空格,有点烦人。我希望有一种方法可以避免这种情况发生。

如果有更好的解决方案,我会接受它而不是这个。 - AHungerArtist
1
尝试使用 drinkContent.replaceAll(" ", " ") 以保留空格。 - TWiStErRob

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接