Page 784 - 2
P. 784

나 동작 설명.
                 1)  퍼즐을 실행시키면 9       개의 버튼에 그림이 랜덤으로 들어가고 그림이 들어가지 않은 한 버튼은 비
                    활성화됨.
                 2)  비 활성화된 버튼의 상하좌우 버튼을 클릭함.
                 3)  클릭한 버튼의 그림이 비 활성화된 버튼에 들어감.
                 4)  비 활성화된 버튼은 활성화되고 눌렀던 버튼은 그림이 사라지며 비 활성화됨.


            4.  프로그램 소스
              가 기본 프레임과 버튼 설정.
            import java.awt.GridLayout;
            import java.awt.event.ActionEvent;
            import java.awt.event.ActionListener;
            import java.util.Random;
            import javax.swing.ImageIcon;
            import javax.swing.JButton;
            import javax.swing.JFrame;


            public class Puzzle extends JFrame implements ActionListener {
                    public static void main(String[] args) {
                            new Puzzle();
                    }
                    JButton b1 = new JButton();
                    JButton b2 = new JButton();
                    JButton b3 = new JButton();
                    JButton b4 = new JButton();
                    JButton b5 = new JButton();
                    JButton b6 = new JButton();
                    JButton b7 = new JButton();
                    JButton b8 = new JButton();
                    JButton b9 = new JButton();
                    Puzzle() {
                            super("Puzzle");
                            setSize(300, 300);
                            setDefaultCloseOperation(EXIT_ON_CLOSE);
                            setLocation(383,94);
                            makeUI();
                            setResizable(false);
                            setVisible(true);
                    }




              나 버튼에 번호값을 중복되지 않게 랜덤으로 넣기.
            public void makeUI() {
                            setLayout(new GridLayout(3, 3));
                            Random r = new Random();
                            b1.setEnabled(true);
                            b2.setEnabled(true);
                            b3.setEnabled(true);
                            b4.setEnabled(true);
                            b5.setEnabled(true);
                            b6.setEnabled(true);
                            b7.setEnabled(true);
                            b8.setEnabled(true);
                            b9.setEnabled(true);




                                                         - 784 -
   779   780   781   782   783   784   785   786   787   788   789