JLabel
HTML形式のテキストを表示する必要があるがあります。ただし、これを4行の長さに制限したいと思います(そうであれば、すべてを表示するためのボタンを提供します)。
これまで、手動またはレイアウトマネージャーを使用して最大サイズを設定してみました。ただし、これらの解決策の両方により、行の一部が表示される可能性があります。
編集:もう少し詳細を追加するには、行の折り返しを正しく尊重し、コンポーネントのサイズを変更し、フォントサイズを変更する場合でも、4行を強制する必要があります。ラベルを正しくフィットする新しいラベルに置き換えることで、サイズ変更/フォントサイズの変更を処理することを検討しました。
JLabel
不完全なタグをうまく処理しているように見えるので、入力文字列を2分探索して、4行の制限を超える文字を見つけて(4FontMetric
行のピクセル数を決定するために)、置換することができます。新しいラベルを持つ既存のラベル。このアプローチの大きな欠点は、ユーザーがパネルのサイズを変更したり、フォントを変更したりするたびに計算を実行する必要があることです(そして、それは汚い汚いハックのように感じます)。