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

📄 toolbar.java

📁 朋友开发的一个扫雷游戏,用SWT开发的,游戏有点慢,想了解的下载看看吧
💻 JAVA
字号:
/*
 * Created on 2005-6-2
 *
 * 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 java.util.Observer;

import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.layout.GridData;

import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.SWT;

import org.eclipse.swt.events.*;
/**
 * @author Administrator
 *
 * TODO To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
public class ToolBar extends Composite implements Observer {

	private Game game = null;
	private Button resetButton = null;
	private BombIndicationPanel indication = null;
	private TimePanel timePanel = null;
	
	public ToolBar(Composite parent,int style,Game game){
		super(parent,style);
		this.game = game;
		//int bombs = game.getTotalBombs();
		GridLayout layout = new GridLayout(3,false);
		layout.horizontalSpacing=1;
		layout.verticalSpacing = 1;
		layout.marginHeight = 2;
		layout.marginHeight = 2;
		setLayout(layout);
		
		int bombs = game.getTotalBombs();
		indication = new BombIndicationPanel(this,new int[]{0,bombs/10,bombs%10});
		GridData data1  = new GridData();
		data1.grabExcessHorizontalSpace = false;
		data1.grabExcessVerticalSpace = false;
		data1.horizontalAlignment = SWT.BEGINNING;
		data1.verticalAlignment = SWT.CENTER;
		indication.setLayoutData(data1);
		
		resetButton = new Button(this,SWT.PUSH);
		GridData data2  = new GridData();
		
		data2.grabExcessHorizontalSpace = true;
		data2.grabExcessVerticalSpace = false;
		data2.horizontalAlignment = SWT.CENTER;
		data2.verticalAlignment = SWT.CENTER;
		resetButton.setLayoutData(data2);
		resetButton.setImage(GlobalInfo.getResetImage());
		resetButton.addSelectionListener( new SelectionAdapter(){
			public void widgetSelected(SelectionEvent event){
				//game.reset(game.reset(game.getLevle()));
				processClicked();
			}
		});
		
		
		timePanel = new TimePanel(this,new int[]{0,0,0});
		GridData data3  = new GridData();
		data3.grabExcessHorizontalSpace = false;
		data3.horizontalAlignment = SWT.END;
		data3.verticalAlignment = SWT.CENTER;
		data3.grabExcessVerticalSpace = false; 
		timePanel.setLayoutData(data3);
	
		game.addObserver(timePanel);
		game.addObserver(indication);
		
		
	}
	public ToolBar(Composite parent,Game game){
		this(parent,SWT.BORDER,game);
		
	}

	/* (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

	}

	private void processClicked(){
		timePanel.play();
		game.reset(game.getLevle());
	}
	
	
	public void pause(){
		timePanel.pause();
	}
}

⌨️ 快捷键说明

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