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

📄 restorablebuttonmanager.java

📁 Java版拼图游戏
💻 JAVA
字号:
/*
 * @(#)RestorableButtonManager.java 1.0 03/08/22
 * Copyright 2003 Entao Zhang, All rights reserved.
 */

import javax.swing.*;
import java.awt.*;

/**
 * 拼图一般方式的mainPane管理类.
 */
public class RestorableButtonManager extends ImageRevertComponentsManager{
	private int swap;

	public RestorableButtonManager(ImageRevertUnitPane ir){
		super(ir);
		setConfuse(new RestorableConfuse());
		setEventListener(new RestorableButtonEventListener(ir));
	}

	//重载父类此方法,以添加键盘事件处理.
	public Component buildMainPanel(){
		super.buildMainPanel();
		Action[] action=new AbstractAction[4];
		String[] key={"LEFT","RIGHT","UP","DOWN"};
		for (int i=0; i<action.length; i++){
			action[i]=new RestorableKeyAction(ir,key[i]);
			panel.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(
						KeyStroke.getKeyStroke(key[i]),key[i]);
			panel.getActionMap().put(key[i],action[i]);
		}
		return panel;
	}

	public void componentStateChange(int where){
		if (ir.isConfused()){
			button[where].setIcon(cell[ir.grids[where]]);
		}else{
			button[where].setIcon(cell[where]);
		}
	}

	public void swapStateChange(boolean state){
		swap=ir.swap;
		button[swap].setEnabled(state);
		if (!state){
			button[swap].setDisabledIcon(new ImageIcon(
				GrayFilter.createDisabledImage(cell[swap].getImage())));
		}
	}
}

⌨️ 快捷键说明

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