mkyong - outputstream csv java
Newline en JLabel (6)
¿Cómo puedo mostrar una nueva línea en JLabel
?
Por ejemplo, si quisiera:
Hola Mundo!
bla, bla, bla
Esto es lo que tengo ahora:
JLabel l = new JLabel("Hello World!/nblahblahblah", SwingConstants.CENTER);
Esto es lo que se muestra:
¡Hola, mundo! Blahblahblah
Perdóname si esta es una pregunta tonta, solo estoy aprendiendo algunos conceptos básicos de Swing ...
Gracias Aakash por recomendar JIDE MultilineLabel. StyledLabel de JIDE también se ha mejorado recientemente para admitir líneas múltiples. Lo recomendaría sobre MultilineLabel ya que tiene muchas otras características excelentes. Puede consultar un artículo sobre StyledLabel a continuación. Todavía es gratis y de código abierto.
JLabel es capaz de mostrar un código HTML rudimentario, por lo que no responde al uso del carácter de nueva línea (a diferencia, por ejemplo, de System.out).
Si coloca el HTML correspondiente y utiliza <BR>
, obtendrá sus nuevas líneas.
Puede usar el componente MultilineLabel en los Componentes de Código Abierto de Jide.
Puedes intentar hacer esto:
myLabel.setText("<html>" + myString.replaceAll("<","<").replaceAll(">", ">").replaceAll("/n", "<br/>") + "</html>")
Las ventajas de hacer esto son:
- Reemplaza todas las líneas nuevas con
<br/>
, sin falta. - Reemplaza automáticamente eventual
<
y>
con<
y>
respectivamente, evitando que se produzcan estragos.
Lo que hace es:
-
"<html>" +
agrega una etiquetahtml
apertura al principio -
.replaceAll("<", "<").replaceAll(">", ">")
escapa<
y>
para mayor comodidad -
.replaceAll("/n", "<br/>")
reemplaza todas las líneas nuevas por etiquetasbr
(salto de línea HTML) por lo que quería - ... y
+ "</html>"
cierra nuestra etiquetahtml
al final.
PD: Lamento despertar una publicación tan antigua, pero sea lo que sea, ¡tienes un fragmento confiable para tu Java!
Rodee la cuerda con <html></html>
y rompa las líneas con <br/>
.
JLabel l = new JLabel("<html>Hello World!<br/>blahblahblah</html>", SwingConstants.CENTER);
Tu puedes hacer
JLabel l = new JLabel("<html><p>Hello World! blah blah blah</p></html>", SwingConstants.CENTER);
y lo envolverá automáticamente cuando sea apropiado.