我正在使用包含TextFlow对象的FlowPage对象绘制多行文本标签。我的标签类的代码是:
class TransitionLabel extends FlowPage {
private TextFlow content;
public TransitionLabel()
{
setForegroundColor(ColorConstants.white);
setHorizontalAligment(PositionConstants.CENTER);
content = new TextFlow();
content.setOpaque(true);
content.setText("");
add(content);
}
public void setText(String content)
{
this.content.setText(content);
revalidate();
repaint();
}
public String getText()
{
return this.content.getText();
}
}
当控件刷新(修改后)时,它会像下面的屏幕截图中的SEND标签一样结束。
我做错了什么? thanx的帮助PS 可以找到相同的屏幕截图here
PPS
我编辑了与问题无关的方法getPreferredSize
答案 0 :(得分:0)
FlowPage
不会自行调整大小。它只告诉布局管理器其父图 - 根据请求 - 它想要的大小。我没有使用什么布局管理器,但它可能不会调整您的标签大小。您可以尝试添加
setSize(getPreferredSize());
在重新验证之前,在setText(..)
方法中。