0

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 ラベルのようになります乱雑なラベル テキスト

私は何か間違ったことをしていますか?助けてくれてありがとう

PS同じスクリーンショットがここにあります

getPreferredSizePPS iは問題に関係のないメソッドを編集しました

4

1 に答える 1

0

はそれ自体のFlowPageサイズを変更しません。要求に応じて、親図のレイアウト マネージャーに必要なサイズを通知するだけです。どのレイアウトマネージャーが使用されているかはわかりませんが、ラベルのサイズが変更されない可能性があります。追加してみることができます

setSize(getPreferredSize());

setText(..)再検証する前にメソッドで。

于 2012-02-23T08:29:44.237 に答える