All pastes #1344828 Raw Edit

Anonymous

public text v1 · immutable
#1344828 ·published 2009-02-23 10:27 UTC
rendered paste body
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class WordSearch extends JFrame implements ActionListener { 

    private JMenuBar menuBar;
    private JButton menuItemNG,menuItemE,menuItemS;
    private JPanel grid;
   	private JButton[][] b;
   	private JOptionPane scorex;
	private int counter,p1s = 0,p2s = 0,stopGame = 0;
	
	// The Frame
	public WordSearch(){
		
		super("Word Search");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        b = new JButton[15][15];        
        this.setJMenuBar(theMenuBar());              
        drawTheGridPanel();
        setTheLetters();
              
        setLocationRelativeTo(null);
        setSize(800, 800);
        setVisible(true);
        //setResizable(false);
	}
   	 
   	// The Menu 
    public JMenuBar theMenuBar() {

        menuBar = new JMenuBar();		

        menuItemNG = new JButton("New Game");
	    menuItemNG.setFont(new Font("Tahoma",Font.BOLD,12));
	    menuItemNG.setBackground(new Color(225,225,225));        
        menuBar.add(menuItemNG);
        menuItemNG.addActionListener(this);
        
        menuItemE = new JButton("Quit");
        menuItemE.setFont(new Font("Tahoma",Font.BOLD,12));
	    menuItemE.setBackground(new Color(225,225,225));        
        menuBar.add(menuItemE);
        menuItemE.addActionListener(this);
        
		return menuBar;
    }

    // The Grid
    public void drawTheGridPanel() {    	
		grid = new JPanel(new GridLayout(15,15));    	
    	for (int i = 0; i < 15; i++){
    		for (int j = 0; j < 15; j++){
	    		b[i][j] = new JButton("");
	    		b[i][j].setFont(new Font("Comic Sans MS",Font.BOLD,14));
	    		b[i][j].setForeground(new Color(105,35,97));
	    		b[i][j].setBackground(new Color(255,255,255));
		   		grid.add(b[i][j]);
    			b[i][j].addActionListener(this);    			
    		}
    	}		
    	this.add(grid);
    }
    
    public void setTheLetters(){
    	b[0][0].setText("G");
    	b[0][1].setText("N");
    	b[0][2].setText("I");
    	b[0][3].setText("W");
    	b[0][4].setText("S");
    	b[0][5].setText("C");
    	b[0][6].setText("L");
    	b[0][7].setText("A");
    	b[0][8].setText("S");
    	b[0][9].setText("S");
    	b[0][10].setText("T");
    	b[0][11].setText("R");
    	b[0][12].setText("I");
    	b[0][13].setText("N");
    	b[0][14].setText("G");
    	
    	    	
    	b[1][0].setText("A");
    	b[1][1].setText("J");
    	b[1][2].setText("E");
    	b[1][3].setText("V");
    	b[1][4].setText("A");
    	b[1][5].setText("V");
    	b[1][6].setText("N");
    	b[1][7].setText("T");
    	b[1][8].setText("U");
    	b[1][9].setText("C");
    	b[1][10].setText("F");
    	b[1][11].setText("I");
    	b[1][12].setText("N");
    	b[1][13].setText("A");
    	b[1][14].setText("L");
    	
    	
    	b[2][0].setText("P");
    	b[2][1].setText("V");
    	b[2][2].setText("R");
    	b[2][3].setText("U");
    	b[2][4].setText("O");
    	b[2][5].setText("O");
    	b[2][6].setText("I");
    	b[2][7].setText("O");
    	b[2][8].setText("W");
    	b[2][9].setText("T");
    	b[2][10].setText("H");
    	b[2][11].setText("R");
    	b[2][12].setText("E");
    	b[2][13].setText("A");
    	b[2][14].setText("D");
    	
    	
    	b[3][0].setText("A");
    	b[3][1].setText("T");
    	b[3][2].setText("A");
    	b[3][3].setText("I");
    	b[3][4].setText("N");
    	b[3][5].setText("B");
    	b[3][6].setText("E");
    	b[3][7].setText("M");
    	b[3][8].setText("I");
    	b[3][9].setText("O");
    	b[3][10].setText("G");
    	b[3][11].setText("G");
    	b[3][12].setText("C");
    	b[3][13].setText("T");
    	b[3][14].setText("L");
    	
    	
    	b[4][0].setText("C");
    	b[4][1].setText("C");
    	b[4][2].setText("D");
    	b[4][3].setText("J");
    	b[4][4].setText("J");
    	b[4][5].setText("I");
    	b[4][6].setText("A");
    	b[4][7].setText("L");
    	b[4][8].setText("Y");
    	b[4][9].setText("T");
    	b[4][10].setText("R");
    	b[4][11].setText("I");
    	b[4][12].setText("C");
    	b[4][13].setText("N");
    	b[4][14].setText("T");
    
    	
    	b[5][0].setText("K");
    	b[5][1].setText("E");
    	b[5][2].setText("D");
    	b[5][3].setText("O");
    	b[5][4].setText("C");
    	b[5][5].setText("E");
    	b[5][6].setText("T");
    	b[5][7].setText("Y");
    	b[5][8].setText("B");
    	b[5][9].setText("E");
    	b[5][10].setText("P");
    	b[5][11].setText("H");
    	b[5][12].setText("A");
    	b[5][13].setText("E");
    	b[5][14].setText("B");
    
    	
    	b[6][0].setText("A");
    	b[6][1].setText("J");
    	b[6][2].setText("I");
    	b[6][3].setText("S");
    	b[6][4].setText("R");
    	b[6][5].setText("D");
    	b[6][6].setText("Q");
    	b[6][7].setText("N");
    	b[6][8].setText("C");
    	b[6][9].setText("A");
    	b[6][10].setText("L");
    	b[6][11].setText("E");
    	b[6][12].setText("T");
    	b[6][13].setText("V");
    	b[6][14].setText("O");
    
    	
    	b[7][0].setText("G");
    	b[7][1].setText("B");
    	b[7][2].setText("U");
    	b[7][3].setText("T");
    	b[7][4].setText("Y");
    	b[7][5].setText("O");
    	b[7][6].setText("A");
    	b[7][7].setText("I");
    	b[7][8].setText("O");
    	b[7][9].setText("R");
    	b[7][10].setText("I");
    	b[7][11].setText("I");
    	b[7][12].setText("C");
    	b[7][13].setText("E");
    	b[7][14].setText("O");
    
    	
    	b[8][0].setText("E");
    	b[8][1].setText("O");
    	b[8][2].setText("S");
    	b[8][3].setText("L");
    	b[8][4].setText("U");
    	b[8][5].setText("S");
    	b[8][6].setText("R");
    	b[8][7].setText("R");
    	b[8][8].setText("N");
    	b[8][9].setText("C");
    	b[8][10].setText("W");
    	b[8][11].setText("R");
    	b[8][12].setText("H");
    	b[8][13].setText("X");
    	b[8][14].setText("L");
    
    	
    	b[9][0].setText("C");
    	b[9][1].setText("H");
    	b[9][2].setText("A");
    	b[9][3].setText("R");
    	b[9][4].setText("A");
    	b[9][5].setText("C");
    	b[9][6].setText("T");
    	b[9][7].setText("E");
    	b[9][8].setText("R");
    	b[9][9].setText("T");
    	b[9][10].setText("I");
    	b[9][11].setText("S");
    	b[9][12].setText("A");
    	b[9][13].setText("W");
    	b[9][14].setText("E");
    
    	
    	b[10][0].setText("M");
    	b[10][1].setText("P");
    	b[10][2].setText("S");
    	b[10][3].setText("E");
    	b[10][4].setText("R");
    	b[10][5].setText("V");
    	b[10][6].setText("L");
    	b[10][7].setText("E");
    	b[10][8].setText("T");
    	b[10][9].setText("A");
    	b[10][10].setText("E");
    	b[10][11].setText("T");
    	b[10][12].setText("K");
    	b[10][13].setText("V");
    	b[10][14].setText("A");
    
    	
    	b[11][0].setText("S");
    	b[11][1].setText("W");
    	b[11][2].setText("I");
    	b[11][3].setText("T");
    	b[11][4].setText("C");
    	b[11][5].setText("H");
    	b[11][6].setText("G");
    	b[11][7].setText("W");
    	b[11][8].setText("M");
    	b[11][9].setText("Q");
    	b[11][10].setText("Y");
    	b[11][11].setText("G");
    	b[11][12].setText("A");
    	b[11][13].setText("F");
    	b[11][14].setText("N");
    
    	
    	b[12][0].setText("A");
    	b[12][1].setText("P");
    	b[12][2].setText("P");
    	b[12][3].setText("L");
    	b[12][4].setText("E");
    	b[12][5].setText("T");
    	b[12][6].setText("D");
    	b[12][7].setText("O");
    	b[12][8].setText("H");
    	b[12][9].setText("T");
    	b[12][10].setText("E");
    	b[12][11].setText("M");
    	b[12][12].setText("E");
    	b[12][13].setText("T");
    	b[12][14].setText("U");
    
    	
    	b[13][0].setText("A");
    	b[13][1].setText("W");
    	b[13][2].setText("T");
    	b[13][3].setText("B");
    	b[13][4].setText("E");
    	b[13][5].setText("A");
    	b[13][6].setText("N");
    	b[13][7].setText("S");
    	b[13][8].setText("R");
    	b[13][9].setText("O");
    	b[13][10].setText("F");
    	b[13][11].setText("E");
    	b[13][12].setText("R");
    	b[13][13].setText("R");
    	b[13][14].setText("S");
    	
    	
    	b[14][0].setText("O");
    	b[14][1].setText("V");
    	b[14][2].setText("E");
    	b[14][3].setText("R");
    	b[14][4].setText("L");
    	b[14][5].setText("O");
    	b[14][6].setText("A");
    	b[14][7].setText("D");
    	b[14][8].setText("I");
    	b[14][9].setText("N");
    	b[14][10].setText("G");
    	b[14][11].setText("G");
    	b[14][12].setText("B");
    	b[14][13].setText("T");
    	b[14][14].setText("L");
    
    	 

    
    	
    }
    
      
    
    // Checking if button is filled
    public boolean isX(JButton btt){
    	return (btt.getText().equalsIgnoreCase("X"));
    }    
    public boolean isO(JButton btt){
    	return (btt.getText().equalsIgnoreCase("O"));
    }
    
    public char isWin(){
    	if  ((isX(b[0][0]) && isX(b[0][1]) && isX(b[0][2])) ||    		
    		(isX(b[1][0]) && isX(b[1][1]) && isX(b[1][2])) ||
    		(isX(b[2][0]) && isX(b[2][1]) && isX(b[2][2])) ||
    		(isX(b[0][0]) && isX(b[1][0]) && isX(b[2][0])) ||
    		(isX(b[0][1]) && isX(b[1][1]) && isX(b[2][1])) ||
			(isX(b[0][2]) && isX(b[1][2]) && isX(b[2][2])) ||    			
			(isX(b[0][0]) && isX(b[1][1]) && isX(b[2][2])) ||	
			(isX(b[0][2]) && isX(b[1][1]) && isX(b[2][0]))) return 'x';
		if  ((isO(b[0][0]) && isO(b[0][1]) && isO(b[0][2])) ||
    		(isO(b[1][0]) && isO(b[1][1]) && isO(b[1][2])) ||
    		(isO(b[2][0]) && isO(b[2][1]) && isO(b[2][2])) ||
    		(isO(b[0][0]) && isO(b[1][0]) && isO(b[2][0])) ||
    		(isO(b[0][1]) && isO(b[1][1]) && isO(b[2][1])) ||
			(isO(b[0][2]) && isO(b[1][2]) && isO(b[2][2])) ||    			
			(isO(b[0][0]) && isO(b[1][1]) && isO(b[2][2])) ||	
			(isO(b[0][2]) && isO(b[1][1]) && isO(b[2][0]))) return 'o';	
		return 'a';						
    }
    
    // Event Handling    	
    public void actionPerformed(ActionEvent e) {
    	
    	// Menu Items
		if (e.getSource() == menuItemNG ) {
			stopGame = 0;			
			for (int i = 0; i < 15; i++){
				for (int j = 0; j < 15; j++){					
					b[i][j].setBackground(new Color(255,255,255));;
				}
			}			
		}
		
		if (e.getSource() == menuItemE ) System.exit(0);    	
    	
    	// Grid Buttons
		for (int i = 0; i < 15; i++){
			for (int j = 0; j < 15; j++){				
				if (e.getSource().equals(b[i][j]) && (stopGame != 1) && (counter != 2)){ 
					b[i][j].setBackground(new Color(200,150,50));
					counter++;				
				} else if (isWord){
					
				}
				if (isWin() == 'x'){
					JOptionPane.showMessageDialog(this,"X wins");
					stopGame = 1;
					p1s++;
				} else if (isWin() == 'o'){
					JOptionPane.showMessageDialog(this,"O wins");
					stopGame = 1;
					p2s++;
				}
			}
		}
   	}
}