νλ μ μμ±νκΈ°
import javax.swing.*; JFrame a = new JFrame("μ°μ΅"); a.setSize(300,200); a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); a.setVisible(true);β
import javax.swing.*;
π μλ°μ μ€μ ν΄λμ€λ€μ μ΄ ν¨ν€μ§ μμ λ€μ΄μμ΄μ.
π λ€μ *μ javax.swing ν¨ν€μ§μ μλ λͺ¨λ ν΄λμ€λ₯Ό μ¬μ©νκ² λ¨ μ리μμ.
JFrame a = new JFrame("μ°μ΅");
π νλ μ κ°μ²΄λ₯Ό μμ±ν©λλ€. μμ±μλ νμ΄νμ΄μμ.
a.setSize(300,200);
π κ°μ²΄ a νλ μμ μ¬μ΄μ¦ width = 300, height = 200μΌλ‘ μ€μ
a.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
π νλ μ μ°½μ μλ¨μ X λ²νΌμ λλ¬μ κ»μ λ, νλ‘κ·Έλ¨μ΄ κΊΌμ§λλ€.
a.setVisible(true);
π νλ μ μ°½μ 보μ΄κ² μ€μ ν©λλ€.
π μ μ°λ©΄ μ°½ μ보μ!
π Object < Component < Container < Window< Frame < JFrame
π» νλ μ(frame)
νλ μμ μμμ μ€λͺ ν λ°μ κ°μ΄ λ©λ΄λ₯Ό λΆμΌ μ μλ μλμ°λ€.
π μμ±μ
JFrame()
- μ§μ λ νμ΄νμ μλ‘μ΄ νλ μμ λ§λ λ€.
JFrame(String title)
- νμ΄νμ΄ μλ μλ‘μ΄ νλ μμ λ§λ λ€.
π λ©μλ
void add(Component c)
- μ§μ λ 컨ν¬λνΈμ νλ μμ μΆκ°νλ€.
JMenuBar getJMenuBar()
- μ΄ νλ μμ λν λ©λ΄λ₯Ό μ»λλ€.
void pack()
- νλ μμ ν¬κΈ°λ₯Ό μΆκ°ν μ»΄ν¬λνΈλ€μ ν¬κΈ°μ λ§λλ‘ μ‘°μ νλ€.
void remove(Component c)
- μ§μ λ μ»΄ν¬λνΈλ₯Ό νλ μμμ μ κ±°νλ€.
void setDefaultCloseOperation()
- μ¬μ©μκ° νλ μμ λ«μ λ μνλλ λμμ μ€μ νλ€.
- μΌλ°μ μΌλ‘ JFrame.EXIT_ON_CLOSEλ‘ μ§μ νλ€.
void setIconImage(Icon image)
- νλ μμ΄ μ΅μνλμμ λμ μμ΄μ½ μ§μ
void setLayout(LayoutManager layout)
- νλ μμμ λμ΄λ μ»΄ν¬λνΈλ€μ λ°°μΉνλ λ°°μΉκ΄λ¦¬μ μ§μ ,
- λν΄νΈλ BorderLayout λ°°μΉκ΄λ¦¬μ
void setLocation(int x, int y)
- νλ μμ xμ’νμ yμ’νλ₯Ό μ§μ νλ€.
void setResizeable(boolean value)
- νλ μμ ν¬κΈ° λ³κ²½ νμ© μ¬λΆ
void setSize(int width, int height)
- νλ μμ ν¬κΈ° μ€μ
void setMenuBar(JMenuBar menu)
- νμ¬ νλ μμ λ©λ΄λ°λ₯Ό λΆμΈλ€.
π» ν¨λ(Panel)
μ»΄ν¬λνΈλ€μ ν¬ν¨νκ³ μλλ‘ μ€κ³λ 컨ν μ΄λ μ€μ νλμ΄λ€. λ μ΄λΈμ΄λ λ²νΌκ³Ό κ°μ μ»΄ν¬λνΈλ€μ νλ©΄μ νμνλ λ°©λ²μ ν¨λμ μ΄λ€ μ»΄ν¬λνΈλ₯Ό μΆκ°νκ³ κ·Έ ν¨λμ νλ μμ μΆκ°νλ κ²μ΄λ€. ν¨λμ μ¬μ©νμ§ μκ³ μ»΄ν¬λνΈλ₯Ό μ§μ μΆκ°ν μ μμ§λ§ λ³λμ ν¨λμ μ°λ κ²μ΄ μ μ§ λ³΄μ λ° λ°°μΉ κ΄λ¦¬μ μ’μ κ²½μ°κ° λ§λ€.
πμμ±μ
JPanel()
- μλ‘μ΄ ν¨λμ μμ±νλ€.
JPanel(boolean isDoubleBuffered)
- λ§μ½ 맀κ°λ³μκ° μ°Έμ΄λ©΄ λλΈ λ²νΌλ§μ μ¬μ©νλ€.
JPanel(LayoutManager layout)
- μ§μ λ λ°°μΉ κ΄λ¦¬μλ₯Ό μ¬μ©νλ ν¨λμ μμ±νλ€.
π λ©μλ
void add(Component c)
- μ§μ λ μ»΄ν¬λνΈλ₯Ό ν¨λμ μΆκ°νλ€.
void remove(Component c)
- μ§μ λ μ»΄ν¬λνΈλ₯Ό ν¨λμμ μ κ±°νλ€.
void setLayout(Layoutmanager layout)
- λ°°μΉ κ΄λ¦¬μλ₯Ό μ§μ νλ€. λν΄νΈλ FlowLayoutμ΄λ€.
void setLocation(int x, int y)
- ν¨λμ μμΉλ₯Ό μ§μ νλ€.
void setSize(int width, int height)
- ν¨λμ ν¬κΈ°λ₯Ό μ§μ νλ€.
###void setToolTipText(String text)
μ¬μ©μκ° λ§μ°μ€λ₯Ό ν¨λμ λΉ κ³³μ μ¬λ €λμΌλ©΄ ν΄νμ νμνλ€.
ν¨λμ μ»΄ν¬λνΈ μΆκ°νλ €λ©΄ μμ add() λ©μλλ₯Ό μ¬μ©
Panel panel = new Panel(); panel.add(new Button("μμ")); panel.add(new Button("μ’ λ£"));
π» λ μ΄λΈ
μ½κΈ° μ μ© ν μ€νΈλ₯Ό νμνκΈ° μν μ»΄ν¬λνΈμ΄λ€.
π μμ±μ
JLabel()
- μλ‘μ΄ λ μ΄λΈμ μμ±νλ€.
JLabel(String text)
- μ§μ λ ν μ€νΈλ₯Ό νμνλ λ μ΄λΈμ μμ±νλ€.
π λ©μλ
String getText()
- λ μ΄λΈμ ν μ€νΈλ₯Ό λ°ννλ€.
void setText(String text)
- λ μ΄λΈμ ν μ€νΈλ₯Ό μ€μ νλ€.
void setToolTipText(String text)
- μ¬μ©μκ° λ§μ°μ€λ₯Ό λ μ΄λΈ μμ μ¬λ €λμΌλ©΄ ν΄νμ νμνλ€.
void setVisible(boolean value)
- λ μ΄λΈμ 보μ΄κ² νκ±°λ κ°μΆλ€.
JLabel label = new JLabel("λ°κ°μ΅λλ€^^");
- λ μ΄λΈ μμ±ν λ νμν ν μ€νΈλ₯Ό μμ±μμ λκΈ΄λ€.
λ μ΄λΈ κ°μ²΄λ₯Ό μμ±νκ³ λμ€μ λ μ΄λΈμ ν μ€νΈλ₯Ό μ€μ νλ λ°©λ²λ μλ€.
JLabel label = new JLabel(); label.setText("λ°κ°μ΅λλ€^^");
πλ μ΄λΈκ³Ό λ²νΌμ μ¬μ©νμ¬ κ°λ¨ν μ ν리μΌμ΄μ μ λ§λ€μ΄λ³΄μ.
MyFrameTest3.java package GUI; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; class MyFrame5 extends JFrame { public MyFrame5() { setSize(300, 200); setDefaultCloseOperation(EXIT_ON_CLOSE); setTitle("MyFrameTest3"); JPanel panel = new JPanel(); // ν¨λ μμ± JLabel label = new JLabel("λ°κ°μ΅λλ€."); // λ μ΄λΈ μμ± JButton button = new JButton("λ²νΌ"); // λ²νΌ μμ± panel.add(label); // ν¨λμ λ μ΄λΈ μΆκ° panel.add(button); // ν¨λμ λ²νΌ μΆκ° add(panel); // ν¨λμ νλ μμ μΆκ° setVisible(true); } } public class MyFrameTest3 { public static void main(String[] args) { MyFrame5 f = new MyFrame5(); } }
μ€νκ²°κ³Ό
ν¨λμ 컨ν μ΄λμ΄λ―λ‘ λμ 보μ΄λ λΆλΆμ μλ€. ν¨λμ λ°°μΉ κ΄λ¦¬μλ λν΄νΈκ° FlowLayoutμ΄λ―λ‘ λ³κ²½ν νμκ° μλ€.
π» λ²νΌ
μ¬μ©μκ° ν΄λ¦νμ κ²½μ° μ΄λ²€νΈλ₯Ό λ°μνμ¬ μνλ λμμ νκ² νλλ° μ΄μ©λλ€. λ²νΌμμ λ³κ²½ κ°λ₯ν κ²μ λ²νΌ μμ ν μ€νΈ, λ²νΌ ν μ€νΈμ ν°νΈ, λ²νΌμ μ κ²½μ, λ°°κ²½μ, κ·Έλ¦¬κ³ λ²νΌμ μν(νμ±, λΉνμ±)μ΄λ€.
π μμ±μ
Button()
- λ μ΄λΈμ΄ μλ λ²νΌμ μμ±νλ€.
BUtton(String label)
- μ§μ λ λ μ΄λΈμ λ²νΌμ μμ±νλ€.
π λ©μλ
String getText()
- λ²νΌμ νμ¬ ν μ€νΈλ₯Ό λ°ννλ€.
void setText(String text)
- λ²νΌμ ν μ€νΈλ₯Ό μ€μ νλ€.
void doClick()
- μ¬μ©μκ° λ²νΌμ λλ₯Έκ²μ²λΌ μ΄λ²€νΈ λ°μμν΄.
void setBorderPainted(boolean value)
- λ²νΌμ κ²½κ³λ₯Ό λνλ΄κ±°λ κ°μΆλ€.
void setContentAreaFilled(boolean value)
- λ²νΌμ λ°°κ²½μ μ±μΈ κ²μΈμ§λ₯Ό μ§μ νλ€.
void setEnabled(boolean value)
- λ²νΌμ νμ±ννκ±°λ λΉνμ±ννλ€.
void setRooloverEnabled(boolean value)
- λ§μ°μ€κ° λ²νΌ μμ μμΌλ©΄ κ²½κ³λ₯Ό μ§νκ² νλ λ‘€μ€λ² ν¨κ³Όλ₯Ό μ€μ νλ€.
void setToolTipText(String text)
- μ¬μ©μκ° λ§μ°μ€λ₯Ό λ²νΌ μμ μ¬λ €λμΌλ©΄ ν΄νμ νμνλ€.
void setVisible(boolean value)
- λ²νΌμ 보μ΄κ² νκ±°λ κ°μΆλ€.
3κ°μ λ²νΌμ κ°μ§ νλ μ λ§λ€κΈ°.
MyFrameTest4.java package GUI; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; class MyFrame6 extends JFrame { public MyFrame6() { setSize(400, 100); setDefaultCloseOperation(EXIT_ON_CLOSE); setTitle("MyFrameTest4"); JPanel panel = new JPanel(); // ν¨λ μμ± JButton btn1 = new JButton(); // λ²νΌ μμ± JButton btn2 = new JButton(); JButton btn3 = new JButton(); // btn1.setText("μΌμͺ½ λ²νΌ"); // λ²νΌμ ν μ€νΈ μ€μ btn2.setText("κ°μ΄λ° λ²νΌ"); btn3.setText("μ€λ₯Έμͺ½ λ²νΌ"); btn3.setEnabled(false); // μΈλ²μ§Έ λ²νΌμ λΆνμ±μΌλ‘ μ€μ panel.add(btn1); // μ»΄ν¬λνΈλ₯Ό ν¨λμ μΆκ° panel.add(btn2); panel.add(btn3); add(panel); // ν¨λμ νλ μμ μΆκ° setVisible(true); // νλ μμ νλ©΄μ νμ } }