编程语言
首页 > 编程语言> > java – 定位JLabel(setAlignment不工作)

java – 定位JLabel(setAlignment不工作)

作者:互联网

我想把我放在JLabel中的图像定位.这是我的代码:

public Main() {
    setLayout (new FlowLayout());
            image = new ImageIcon(getClass().getResource("title.gif"));
            image1 = new JLabel(image);
            image1.setAlignmentX(400);
            image1.setAlignmentY(400);
            add(image1);
}

它显示图像,但显示线条

image1.setAlignmentX(400);
image1.setAlignmentY(400);

不要做任何事情.
我是Java的新手,感谢任何帮助.

(我希望得到一个例子.)

解决方法:

问题:

>您正在使用FlowLayout,即使您正确地执行它也不会尊重绝对定位.
> setAlignmentX(…)用于向容器建议组件沿x轴的对齐方式.如上所述,它取一个0.0f到1.0f的浮点数,0f表示左对齐,0.5f居中,右边1.0f.你肯定不想使用这种方法,或者它在这里是对应的.
>绝对定位需要使用空布局的容器,而不是FlowLayout.
>绝对定位通过setBounds(…)或setLocation(…)方法完成.
>说了这些之后,我建议你不要试图绝对定位,除非有绝对的需要,并且这里有很好的机会,你没有,有更好的方法.

请告诉我们您的问题的详细信息,而不是您要如何解决它,我们可能会更好地帮助您.

标签:java,layout,swing,jlabel,flowlayout
来源: https://codeday.me/bug/20190613/1233012.html