์ปจํ ์ด๋: ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ ํฌํจํ ์ ์๋ ์ปดํฌ๋ํธ
์ปดํฌ๋ํธ: ์ปจํ ์ด๋์ ํฌํจ๋์ด์ผ ํ๋ฉด์ ์ถ๋ ฅ๋ ์ ์๋ ์์ ์ปดํฌ๋ํธ
์ค์ ํ๋ ์
์ ๋ชฉ ํ์์ค, ์ปจํ ์ธ ํ์ด์ง
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(); } }
