📄 restorablebuttonmanager.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 + -