首頁  >  文章  >  Java  >  如何在Java Swing JLabel中實作自動換行?

如何在Java Swing JLabel中實作自動換行?

Barbara Streisand
Barbara Streisand原創
2024-11-27 07:12:09191瀏覽

How to Achieve Word Wrap in a Java Swing JLabel?

JLabel 中的自動換行文字

在 Java Swing 中,JLabel 沒有內建的「自動換行」屬性成分。但是,我們可以使用 HTML 樣式來實現此效果。

解決方案:使用 HTML 寬度

我們可以明確定義文字的寬度,而不是設定自動換行屬性JLabel 的 HTML 正文使用 CSS。此寬度將決定要渲染的行數,從而決定標籤的首選高度。

透過在CSS 中設定寬度,我們無需手動計算應在何處出現換行或確定最佳大小

這是一個Java 程式碼範例,示範如何使用HTML 設定JLabel 的寬度:

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 正文的寬度設定為200px 和300px,從而使文字相應地換行。

範例輸出

上述的輸出程式碼將是兩個訊息對話框:

  • 第一個對話框的寬度較窄(200 像素),文字換行為多行。
  • 第二個對話框的寬度較寬(300 像素),文字適合單行。

此技術提供了一種簡單的方法在JLabel元件中實現自動換行的方法,無需依賴第三方函式庫或複雜的計算。

以上是如何在Java Swing JLabel中實作自動換行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn