⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timepanel.java

📁 朋友开发的一个扫雷游戏,用SWT开发的,游戏有点慢,想了解的下载看看吧
💻 JAVA
字号:
/*
 * Created on 2005-6-5
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package bomb;

import java.util.Observable;

import org.eclipse.swt.widgets.Composite;

/**
 * @author Administrator
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class TimePanel extends LEDPanel {

	private TimeTicker timeTicker = null;
	private TimeTickerThread thread = null;
	private String init = null; 
	public TimePanel(Composite parent,int[] patterns){
		super(parent,patterns);
		String tmp = "";
		for (int i=0;i<patterns.length;i++){
			tmp = tmp + patterns[i];
		}
		init = tmp; 
		timeTicker = new TimeTicker(Integer.parseInt(tmp));
		thread = new TimeTickerThread(timeTicker);
		timeTicker.addObserver(this);
		
	}
	
	public TimePanel(Composite parent){
		this(parent,new int[]{0});
	}
	/* (non-Javadoc)
	 * @see java.util.Observer#update(java.util.Observable, java.lang.Object)
	 */
	public void update(Observable o, Object arg) {
		// TODO Auto-generated method stub
		if (o instanceof Game){
			Game game = (Game)o;
			if (game.getState().equals(Game.PLAYING)){
				play();
			}else if(game.getState().equals(Game.READY)){
				reset();
			}else {
				pause();
			}
		}else if (o instanceof TimeTicker){
			final int ticker = ((TimeTicker)o).getTicker();
			this.getDisplay().asyncExec(new Runnable(){
				public void run(){
					setPattern(ticker);
				}
			});
		}
		
	}
	
	public void pause(){
		thread.pause();
	}
	public void play(){
		thread.go();
	}
	
	public void reset(){
		timeTicker.setTicker(new Integer(init).intValue());
		pause();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -