Warum haben die Label.RIGHT , Label.LEFT, Label.CENTER gleiche Ergebnis ?


#1

Hallo Leute ,

ich bin am lernen und es ist eh nicht lebenswichtig , aber als ich ausprobiert habe ist immer gleiches rausgekommen
Woran liegt das?

		Label label1 = new Label("Da kommt ein Text!",Label.RIGHT);
		Button button1 = new Button("Button");
		
		this.setLayout(new FlowLayout());
		
		this.add(label1);
		this.add(button1);```

#2

Das liegt daran, wie das FlowLayout die Componenten anordnet.

Wenn das fuer deinen Test der ganze Code ist, dann verwende mal das GridLayout um zu sehen wie der Parameter bei Label funktioniert

this.setLayout(new GridLayout(2,1));


#3

Label.RIGHT richtet den Inhalt des JLabels aus. Ă„nderungen siehst du daher nur wenn dein Label breiter ist als der Inhalt:

public class JLabelDemo
{
    public static void main(String[] args)
    {
        JFrame frame = new JFrame("JLabel Demo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Container contentPane = frame.getContentPane();
        contentPane.setLayout(new GridLayout(3, 0));

        contentPane.add(new JLabel("links", JLabel.LEFT));
        contentPane.add(new JLabel("mitte", JLabel.CENTER));
        contentPane.add(new JLabel("recht", JLabel.RIGHT));

        contentPane.setPreferredSize(new Dimension(100, 50));

        frame.pack();
        frame.setVisible(true);
    }
}