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

时间:2011-11-25 21:34:49

标签: java gwt user-interface resize smartgwt

我觉得我必须做一些非常愚蠢的事情。我可以做些什么来根据内容调整HTMLFlow的大小?我不需要动态完成,只需要创建第一次也是唯一一次。以下是我尝试过的两种方法(没有列出各种排列)没有运气。我也试过一个标签无济于事。

    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

在第二个例子中,'较长内容'应该在一行上,因为它是来自'content2'的单独标签/ htmlflow。所以,我得到了很多额外的间距或自动换行。这似乎应该很简单所以任何人都可以帮助我吗?我希望它看起来像:

longer content content2

1 个答案:

答案 0 :(得分:4)

看起来这对我来说很有用:

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

最后一点是因为它似乎从内容中修剪了空格,grr。我希望有一些方法可以不这样做。