ホームページ > Java > &#&チュートリアル > Java Swing JLabel でワードラップを実現するにはどうすればよいですか?

Java Swing JLabel でワードラップを実現するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-11-27 07:12:09
オリジナル
256 人が閲覧しました

How to Achieve Word Wrap in a Java Swing JLabel?

JLabel 内のテキストの自動折り返し

Java Swing には、JLabel の組み込みの「ワードラップ」プロパティがありません。コンポーネント。ただし、HTML スタイルを使用してこの効果を実現できます。

解決策: HTML の幅を使用する

ワードラップ プロパティを設定する代わりに、ワードラップの幅を明示的に定義できます。 CSSを使用したJLabelのHTML本文。この幅によって、レンダリングする行数が決まり、ラベルの適切な高さが決まります。

CSS で幅を設定することで、改行位置を手動で計算したり、ラベルの最適なサイズを決定したりする必要がなくなります。

HTML を使用して JLabel の幅を設定する方法を示す Java コード例を次に示します。

import javax.swing.*;

public class FixedWidthLabel {

    public static void main(String[] srgs) {
        final String s = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean eu nulla urna. Donec sit amet risus nisl, a porta enim. Quisque luctus, ligula eu scelerisque gravida, tellus quam vestibulum urna, ut aliquet sapien purus sed erat. Pellentesque consequat vehicula magna, eu aliquam magna interdum porttitor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Sed sollicitudin sapien non leo tempus lobortis. Morbi semper auctor ipsum, a semper quam elementum a. Aliquam eget sem metus.";
        final String html = "<html><body>
ログイン後にコピー

たとえば、HTML 本文の幅は 2 つの別個のメッセージ ダイアログで 200 ピクセルと 300 ピクセルに設定され、それに応じてテキストが折り返されます。

出力例

出力上記のコードは 2 つのメッセージ ダイアログになります:

  • 最初のダイアログの幅は狭いです。 (200px) で、テキストは複数行に折り返されます。
  • 2 番目のダイアログの幅はより広く (300px)、テキストは 1 行に収まります。

この手法では、簡単な操作が可能です。サードパーティのライブラリや複雑な計算に依存せずに、JLabel コンポーネントでワードラップを実現する方法。

以上がJava Swing JLabel でワードラップを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート