All pastes #991169 Raw Edit

Miscellany

public java v1 · immutable
#991169 ·published 2008-04-20 19:41 UTC
rendered paste body
import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Memory {	private JFrame frame;	private Container contentPane;	private MemoryBoard board;	/**	 * Create a memory game and show it on the screen.	 * @throws InterruptedException 	 */	public Memory() throws InterruptedException {		makeFrame();		makeMenuBar(frame);	}	/**	 * Create the swing frame and its contents.	 */	private void makeFrame() throws InterruptedException {		frame = new JFrame("Memory");		contentPane = frame.getContentPane();		contentPane.setLayout(new GridLayout(4, 2));		board = new MemoryBoard();		MemoryCard[] cards = board.generateCards();		for (int i = 0; i < (2 * board.getNumberOfCards()); i++) {			contentPane.add(cards[i]);			cards[i].addActionListener(new ActionListener() {				public void actionPerformed(ActionEvent e) {					MemoryCard c = (MemoryCard) e.getSource();					if (!c.isBlank()) {						if (board.isFirstCard(c)) {							c.turnCard();						} else {							c.turnCard();							long wait = System.currentTimeMillis();							while(System.currentTimeMillis() - wait < 2000) {							// gör saker som ska göras medan man väntar... kanske uppdatera animation eller nåt							}							try {//							Thread.sleep(2000); 							}							catch								(Exception ex) {									System.err.println("Thread was interrupted");								}							if ((c != board.getFirstCard())									&& board.compareCards(c)) {								c.setBlank();								board.getFirstCard().setBlank();								board.resetFirstCard();							} else {								board.getFirstCard().turnCard();								board.resetFirstCard();								c.turnCard();							}						}					}				}			});		}		frame.pack();		frame.setVisible(true);	}	public static void main(String args[]) throws InterruptedException {		new Memory();	}	private void makeMenuBar(JFrame frame) {		JMenuBar menubar = new JMenuBar();		frame.setJMenuBar(menubar);		JMenu menu;		JMenuItem item;		menu = new JMenu("File");		menubar.add(menu);		item = new JMenuItem("New Game");		item.addActionListener(new ActionListener() {			public void actionPerformed(ActionEvent e) {				//do something			}		});		menu.add(item);	}}