์ปจํ ์ด๋: ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ ํฌํจํ ์ ์๋ ์ปดํฌ๋ํธ
์ปดํฌ๋ํธ: ์ปจํ ์ด๋์ ํฌํจ๋์ด์ผ ํ๋ฉด์ ์ถ๋ ฅ๋ ์ ์๋ ์์ ์ปดํฌ๋ํธ
์ค์ ํ๋ ์
์ ๋ชฉ ํ์์ค, ์ปจํ ์ธ ํ์ด์ง
import javax.swing.JFrame;
public class FrameEx extends JFrame{
FrameEx(){
setTitle("First Frame"); //์ฐฝ ๋ฉ์ธ ํ์ดํ ์ด๋ฆ
setSize(300,300); //์ฐฝ ์ฌ์ด์ฆ ์ค์
setVisible(true); //์ฐฝ ๋ณด์ด๊ธฐ ์ฌ๋ถ
}
public static void main(String[] args) {
new FrameEx();
}
}
๋ฉ์ธ ํจ์๋ฅผ ํฌํจํ ์ ์ฒด ํผ๋ธ๋ฆญ ํด๋์ค์์ ํจ๊ป ์์ฑํ๋ ๊ฒ์ด ๊ถ์ฅ๋จ.
3๊ฐ์ ๋ฒํผ์ ๊ฐ์ง ์ปดํฌ๋ํธ
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class ContentPaneEx extends JFrame{
ContentPaneEx(){
setTitle("ContentPane");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //์ข
๋ฃ๋ฒํผ ํด๋ฆญ ์ ํ๋ก๊ทธ๋จ ์ข
๋ฃ
Container c = getContentPane(); //์ปจํ
์ธ ๋ง ๋ฐ์์ค๊ธฐ
c.setBackground(Color.ORANGE); //๋ฐฐ๊ฒฝ์ ์ง์
c.setLayout(new FlowLayout()); //๋ ์ด์์ ์ง์
c.add(new JButton("OK")); //๋ฒํผ์ ๋ฃ์์๋น
c.add(new JButton("Cancle"));
c.add(new JButton("Ignore"));
setSize(300,300);
setVisible(true);
}
public static void main(String[] args) {
new ContentPaneEx();
}
}
์ปจํ ์ด๋์ ๋ฐฐ์น๊ด๋ฆฌ์
FlowLayout ๊ฐ๋ก์ ๋ ฌํด๋ณด๊ธฐ
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class LayoutEx extends JFrame{
LayoutEx(){
setTitle("Layout");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setBackground(Color.CYAN);
c.setLayout(new FlowLayout(FlowLayout.LEFT, 30, 40));
JButton []b = new JButton[6]; //๋ฒํผ ๋ฐฐ์ด ์์ฑ
for(int i=0; i<b.length; i++) {
b[i] = new JButton(Integer.toString(i+1)); //์ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ณํํด์
c.add(b[i]);
}
setSize(300,300);
setVisible(true);
}
public static void main(String[] args) {
new LayoutEx();
}
}
BorderLayout
์ ์ฝ๋ ์์ ํด์ ์ง์ ์ง์ ํด๋ณด๊ธฐ
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class LayoutEx extends JFrame{
LayoutEx(){
setTitle("Layout");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setBackground(Color.CYAN);
c.setLayout(new BorderLayout(30,40));
JButton []b = new JButton[6]; //๋ฒํผ ๋ฐฐ์ด ์์ฑ
for(int i=0; i<b.length; i++) {
b[i] = new JButton(Integer.toString(i+1)); //์ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ณํํด์
}
c.add(b[0], BorderLayout.CENTER);
c.add(b[1], BorderLayout.NORTH);
c.add(b[2], BorderLayout.SOUTH);
c.add(b[3], BorderLayout.EAST);
c.add(b[4], BorderLayout.WEST);
setSize(300,300);
setVisible(true);
}
public static void main(String[] args) {
new LayoutEx();
}
}
GridLayout
import java.awt.Color;
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class GridLayoutEx extends JFrame{
GridLayoutEx(){
setTitle("GridLayout");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setBackground(Color.gray);
c.setLayout(new GridLayout(4,2,5,5));
c.add(new JLabel("ํ๋ฒ"));
c.add(new JTextField(""));
c.add(new JLabel("์ด๋ฆ"));
c.add(new JTextField(""));
c.add(new JLabel("ํ๊ต"));
c.add(new JTextField(""));
c.add(new JLabel("๋ถ์ ๊ณต"));
c.add(new JTextField(""));
setSize(300,300);
setVisible(true);
}
public static void main(String[] args) {
new GridLayoutEx();
}
}
๊ฒน์น๊ฒ ์ฌ๋ฆฌ๊ณ ์ถ์ ๋ ๋ฐฐ์น๊ด๋ฆฌ์๊ฐ ์๋ ์ปจํ ์ด๋๋ก ๋ง๋ค์ด์ผ ํ๋ค.
๋ฐฐ์น๋ฅผ ๋ฐ๊พธ๋ฉด์ ์ ๋๊ฐ์ผ๋ก ๋ง๊ตฌ๋ง๊ตฌ ๊ฒน์น๊ฒ ๋ฐฐ์นํ๊ธฐ.
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class NullLayout extends JFrame{
NullLayout(){
setTitle("Null Layout");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(null);
JLabel la = new JLabel("Hello");
la.setSize(100,20);
la.setLocation(130,100);
c.add(la);
for(int i = 1; i<=10; i++) {
JButton b = new JButton(Integer.toString(i));
b.setSize(50,20);
b.setLocation(i*15,i*15);
c.add(b);
}
setSize(300,300);
setVisible(true);
}
public static void main(String[] args) {
new NullLayout();
}
}
728x90
๋ฐ์ํ
0