Demo Site

SCRIP JAVA PUZELL

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.Font.*;
    public class Puzel extends JFrame implements ActionListener{
    private JButton tombol[][];
    private JPanel PapanMainan,PapanJudul,PapanMenu;
    private String [] Tt = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O"," ",""};
    private int indexlabel = 0;
    public Puzel ( String title ){
        super ( title );

        // Buat Judul
        PapanJudul = new JPanel();
        JLabel judul = new JLabel ("Puzel");
        judul.setAlignmentY(SwingConstants.CENTER);
        judul.setHorizontalTextPosition(SwingConstants.CENTER);
                PapanJudul.add(judul);

                // BUat menu
        JButton acak = new JButton ("Acak");
        acak.addActionListener(this);
                PapanMenu = new JPanel();
        PapanMenu.add(acak);
                PapanMenu.setBackground(Color.BLUE);

                // Buat Tombol ABC
        PapanMainan = new JPanel();
        PapanMainan.setLayout( new GridLayout(4,4,4,4));
        tombol = new JButton[4][4];
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
                Container PapanUtama = this.getContentPane();
                int index = 0;
        for(int i=0;i<=3;i++){
        for(int j=0;j<=3;j++){
            tombol[i][j] = new JButton(Tt[index]);
            tombol[i][j].setFont( new java.awt.Font("",1,38));
            PapanMainan.add(tombol[i][j]);
            index ++;
            tombol[i][j].addActionListener(this);

            }
        }
             PapanUtama.setLayout(new BorderLayout());
             PapanUtama.add(PapanJudul,BorderLayout.NORTH);
             PapanUtama.add(PapanMainan,BorderLayout.CENTER);
             PapanUtama.add(PapanMenu,BorderLayout.SOUTH);
             acakAcak();
        }

 public void acakAcak(){
     String [] acak = {"D","A","B","F","G","K","L","C","E","O"," ","M","N","H",
     "I","J"};
            indexlabel++;
            if (indexlabel>12){indexlabel = 1;}

                for(int i=0;i<=3;i++){
                for(int j=0;j<=3;j++){
            if (indexlabel>15){
                indexlabel = 0;
            }
            tombol[i][j].setText(acak[indexlabel]);
            tombol[i][j].setEnabled(true);
            indexlabel++;
                }
          }
 }
 public void actionPerformed(ActionEvent a){
     String l = a.getActionCommand();
     int indexi = 0,indexj=0;
     Boolean cek = false;

     // acak
        if(l.equals("Acak")){
            acakAcak();
            for(int i=0;i<=3;i++){
                for(int j=0;j<=3;j++){
                    if (tombol[i][j].getText().equals("Acak")){
                        cek = true;
                    }
                }
            }

// acak
        }
// acak
     if (l !=" "){
       for(int i=0;i<=3;i++){
           for(int j=0;j<=3;j++){
               if(a.getSource()== tombol[i][j]){
                   indexi = i;
                   indexj = j;

               }
           }
       }
if(((indexi==1)|(indexi=2))&&((indexj==1)|(indexj==2))){
    if(tombol[indexi-1][indexj].getText().equals(" ")){
        tombol[indexi][indexj].setText(" ");
        tombol[indexi-1][indexj].setText(l);

    }else if (tombol[indexi+1][indexj].getText().equals(" ")){
         tombol[indexi][indexj].setText(" ");
         tombol[indexi+1][indexj].setText(l);

    }else if (tombol[indexi][indexj-1].getText().equals(" ")){
         tombol[indexi][indexj].setText(" ");
         tombol[indexi][indexj-1].setText(l);

    }else if (tombol[indexi][indexj+1].getText().equals(" ")){
         tombol[indexi][indexj].setText(" ");
         tombol[indexi][indexj+1].setText(l);
    }
}else if (indexi==0){
    if (indexj==0){
        if (tombol[indexi+1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
        }else if (tombol[indexi][indexj+1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
        }
    }else if (indexj==3){
        if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj-1].setText(l);
    }else if (tombol[indexi+1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
    }
    }else{

    }if (tombol[indexi+1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
    }else if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj-1].setText(l);
     }else if (tombol[indexi][indexj+1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj+1].setText(l);
     }else if(indexi==3){
         if (indexj==0){
         if (tombol[indexi-1][indexj].getText().equals(" ")){
             tombol[indexi][indexj].setText(" ");
             tombol[indexi-1][indexj].setText(l);
    }else if (tombol[indexi][indexj+1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj+1].setText(l);
        }
         }else if(indexj==3){
             if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj-1].setText(l);
        }else if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi-1][indexj].setText(l);
         }
         }else{
             if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj-1].setText(l);
        }else if (tombol[indexi][indexj+1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj+1].setText(l);
         }else if (tombol[indexi-1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi-1][indexj].setText(l);
         }
         }
     }else if(indexj==0){
         if (tombol[indexi][indexj+1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj+1].setText(l);
    }else if (tombol[indexi-1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi-1][indexj].setText(l);
    }else if (tombol[indexi+1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
    }
    }
     }else if(indexj==3){
       if (tombol[indexi][indexj-1].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi][indexj-1].setText(l);
    }else if (tombol[indexi+1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi+1][indexj].setText(l);
    }else if (tombol[indexi-1][indexj].getText().equals(" ")){
            tombol[indexi][indexj].setText(" ");
            tombol[indexi-1][indexj].setText(l);
    }
     }
}
       // cek menang
       cek=true;
        int x=0;
        for(int i=0;i<=3;i++){
            for(int j=0;j<=3;j++){
                   if (!tombol[i][j].getText().equals(Tt[x])){
                       cek = false;
                   }
x++;
            }
        }
        if(cek = true){
            JOptionPane.showMessageDialog(null,"Selamat Anda Menang!","Menang.....",JOptionPane.PLAIN_MESSAGE);
            for(int i=0;i<=3;i++){
                for(int j=0;j<=3;j++){
                    tombol[i][j].setEnabled(false);
                }
                }
            }
        }
     public static void main(String[]args){
         Puzel f = new Puzel("maen puzel");
         f.pack();// setsize(300,300);
         f.setLocation(100,100);
         f.setVisible(true);
     }
 }

Selasa, 22 Juni 2010 pada jam 22.50

1 Comment to "SCRIP JAVA PUZELL"

mimih,,

panjangnya ,,,
gila mank ni bahasa ya...

Posting Komentar