Hi folks,
Please explain me why this two program behave differently.
The only difference is in the use of JButton and JLabel, respectively.
Here is the first with JButton:
---
package com.buday.buttonhello;
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
JFrame frame = new JFrame("Hello World Application");
JButton b = new JButton("Hello!");
frame.getContentPane().setLayout(new BorderLayout());
frame.getContentPane().add(b, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}
---
Running this, if I resize the window, the button shows itself in the
very center.
The version with label is (just to free you from editing the
previous):
---
package com.buday.labelhello;
import java.awt.*;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
JFrame frame = new JFrame("Hello World Application");
JLabel label = new JLabel("Hello!");
frame.getContentPane().setLayout(new BorderLayout());
frame.getContentPane().add(label, BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}
---
Running this, the label appears on the left edge of the window,
positioned in the center vertically. Can I make this label to appear
in the very center of the window? How? Any help is appreciated.
- Gergely
Babu Kalakrishnan - 30 Sep 2004 15:00 GMT
> package com.buday.labelhello;
>
[quoted text clipped - 19 lines]
> positioned in the center vertically. Can I make this label to appear
> in the very center of the window? How? Any help is appreciated.
label.setHorizontalAlignment(SwingContants.CENTER);
BK