如何将JLabel对齐到JPanel的左侧?

Arc*_*rma 8 java swing jlabel layout-manager flowlayout

我想把我的JLabel对齐到左边.

    String lText = "<html><b><font color = white face = comic sans ms size = 20>mybook</font></b></html>";
    JLabel label = new JLabel(lText);
    label.setBorder(new EmptyBorder(25,0,25,500));
Run Code Online (Sandbox Code Playgroud)

我尝试使用EmptyBorder做它,但它没有正确对齐.我正在使用FlowLayout

Rei*_*eus 15

FlowLayoutCENTER默认情况下使用对齐.尝试使用LEFT对齐JLabel JPanel容器

myJPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
Run Code Online (Sandbox Code Playgroud)

  • 这会将整个面板向左对齐。我只想在左边对齐我的标签。 (2认同)

Hov*_*els 5

您可能希望设置JLabel的horizo​​ntalAlignment属性.一种方法是通过它的构造函数.尝试:

JLabel label = new JLabel(lText, SwingConstants.LEFT);
Run Code Online (Sandbox Code Playgroud)

这也可以通过预期的setter方法完成:

label.setHorizontalAlignment(SwingConstants.LEFT);
Run Code Online (Sandbox Code Playgroud)

  • 这只会对齐标签边框内的文本,而不是标签在面板中的对齐方式。 (3认同)