Bagaimana cara menampilkan baris baru di JLabel
?
Misalnya, jika saya ingin:
Halo Dunia!
bla bla bla
Inilah yang saya miliki sekarang:
JLabel l = new JLabel("Hello World!\nblahblahblah", SwingConstants.CENTER);
Inilah yang ditampilkan:
Halo Dunia! Bla bla bla
Maafkan saya jika ini pertanyaan bodoh, saya baru saja mempelajari beberapa dasar-dasar Swing ...
java
user-interface
swing
formatting
jlabel
mportiz08.dll
sumber
sumber
Jawaban:
Kelilingi string dengan
<html></html>
dan hancurkan garis dengan<br/>
.sumber
Anda dapat mencoba dan melakukan ini:
Keuntungan melakukan ini adalah:
<br/>
, tanpa gagal.<
dan>
dengan<
dan>
masing - masing, mencegah beberapa kerusakan render.Apa yang dilakukannya adalah:
"<html>" +
menambahkanhtml
tag pembuka di awal.replaceAll("<", "<").replaceAll(">", ">")
lolos<
dan>
untuk kenyamanan.replaceAll("\n", "<br/>")
mengganti semua baris baru denganbr
tag (HTML line break) untuk apa yang Anda inginkan+ "</html>"
menutuphtml
tag di akhir.PS: Saya sangat menyesal membangunkan posting lama seperti itu, tetapi terserah, Anda memiliki cuplikan yang dapat diandalkan untuk Java Anda!
sumber
Anda dapat menggunakan komponen MultilineLabel di Jide Open Source Components.
http://www.jidesoft.com/products/oss.htm
sumber
Anda dapat melakukan
dan secara otomatis akan membungkusnya jika perlu.
sumber
Terima kasih Aakash karena telah merekomendasikan JIDE MultilineLabel. StyledLabel JIDE juga ditingkatkan baru-baru ini untuk mendukung banyak baris. Saya akan merekomendasikannya melalui MultilineLabel karena memiliki banyak fitur hebat lainnya. Anda dapat melihat artikel di StyledLabel di bawah ini. Ini masih gratis dan open source.
http://www.jidesoft.com/articles/StyledLabel.pdf
sumber
JLabel sebenarnya mampu menampilkan beberapa HTML dasar, itulah sebabnya JLabel tidak menanggapi penggunaan karakter baris baru Anda (tidak seperti, katakanlah, System.out).
Jika Anda memasukkan HTML yang sesuai dan digunakan
<BR>
, Anda akan mendapatkan baris baru.sumber
<br>
tag yang diformat oleh stack-overflow sebagai pemisah baris literal di postingan.