14. 80. 3. Resizing and positioning a JFrame |
|
The pack method resizes a JFrame to a default width and height.
To resize a JFrame, call the setSize method |
public void setSize (int width, int height)
public void setSize (java.awt.Dimension d)
|
|
The setBounds method allows you to set the size as well as the new top-left corner of the JFrame |
public void setBounds (int x, int y, int width, int height)
|
|
The setLocationRelativeTo method allows you to set your Swing component's location relative to another component. |
public void setLocationRelativeTo (java.awt.Component component)
|
|
If the component is not visible or if you pass null, your JFrame will be display on the screen center. |
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class ResizingPositioningJFrame {
public static void main(String[] args) {
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setTitle("JFrame Test");
frame.setLayout(new GridLayout(3, 2));
frame.add(new JLabel("First Name:"));
frame.add(new JTextField());
frame.add(new JLabel("Last Name:"));
frame.add(new JTextField());
frame.add(new JButton("Register"));
int frameWidth = 200;
int frameHeight = 100;
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
frame.setBounds((int) screenSize.getWidth() - frameWidth, 0, frameWidth, frameHeight);
frame.setVisible(true);
}
}
|
|