varias texto setalignment lineas horizontal como centrar java swing user-interface jlabel htmltext

java - setalignment - ¿Cómo centrar el texto en un JLabel?



label setalignment java (3)

a pesar de muchos intentos, no puedo obtener el resultado que me gustaría ver: texto centrado en JLabel y JLabel centrado en el BorderLayout. Dije "algo" porque también debería haber otro "estado" de etiqueta en la esquina inferior derecha de la ventana. Aquí el bit de código responsable de eso:

setLayout(new BorderLayout()); JPanel area = new JPanel(); JLabel text = new JLabel( "<html>In early March, the city of Topeka," + " Kansas,<br>temporarily changed its name to Google..." + "<br><br>...in an attempt to capture a spot<br>" + "in Google''s new broadband/fiber-optics project." + "<br><br><br>source: http://en.wikipedia.org/wiki/Google_server" + "#Oil_Tanker_Data_Center</html>", SwingConstants.CENTER); text.setVerticalAlignment(SwingConstants.CENTER); JLabel status = new JLabel("status", SwingConstants.SOUTH_EAST); status.setVerticalAlignment(SwingConstants.CENTER); Font font = new Font("SansSerif", Font.BOLD, 30); text.setFont(font); area.setBackground(Color.darkGray); text.setForeground(Color.green); // text.setAlignmentX(CENTER_ALIGNMENT); // text.setAlignmentY(CENTER_ALIGNMENT); // text.setHorizontalAlignment(JLabel.CENTER); // text.setVerticalAlignment(JLabel.CENTER); Font font2 = new Font("SansSerif", Font.BOLD, 20); status.setFont(font2); status.setForeground(Color.green); area.add(text, BorderLayout.CENTER); area.add(status, BorderLayout.EAST); this.add(area);

Gracias por cualquier ayuda proporcionada.


El siguiente constructor, JLabel(String, int) , le permite especificar la alineación horizontal de la etiqueta.

JLabel label = new JLabel("The Label", SwingConstants.CENTER);


String text = "In early March, the city of Topeka, Kansas," + "<br>" + "temporarily changed its name to Google..." + "<br>" + "<br>" + "...in an attempt to capture a spot" + "<br>" + "in Google''s new broadband/fiber-optics project." + "<br>" + "<br>" +"<br>" + "source: http://en.wikipedia.org/wiki/Google_server#Oil_Tanker_Data_Center"; JLabel label = new JLabel("<html><div style=''text-align: center;''>" + text + "</div></html>");


myLabel.setHorizontalAlignment(SwingConstants.CENTER); myLabel.setVerticalAlignment(SwingConstants.CENTER);

Si no puede reconstruir la etiqueta por alguna razón, así es como edita estas propiedades de una JLabel preexistente.