statemanager.java

来自「利用JAVA开发的简单考试系统」· Java 代码 · 共 51 行

JAVA
51
字号
package controller.state;
import viewer.*;
import model.persistency.*;
import javax.swing.JOptionPane;
/**
 *
 * <p>Title: </p>
 * 状态管理类
 * <p>Description: </p>
 * 对各个状态进行管理,用于状态之间的转换
 */
public class StateManager {
     private State currentstate;
     ChoiceItemState cis;
     MChoiceItemState mcis;
     BFItemState bfis;
     TFItemState tfis;
     public StateManager(Mediator m){
    	 cis = new ChoiceItemState(m);
    	 mcis = new MChoiceItemState(m);
    	 bfis = new BFItemState(m);
    	 tfis = new TFItemState(m);
    	 currentstate = null;
     }
     /**
      * 设置为单选题状态
      */
     public void setChoice(){ currentstate = cis;}
     /**
     * 设置为多选题状态
     */
     public void setMChoice(){currentstate = mcis; }
     /**
     * 设置为填空题状态
     */
     public void setBlankFill(){currentstate = bfis;}
     /**
     * 设置为判断题状态
     */
     public void setTrueFalse(){ currentstate = tfis; }
     /**
      * 调用当前状态的动作
      * @param item PersistentItem     题目
      * @return UserFrame              当前状态框架
      */
     public UserFrame mouseDown(PersistentItem item){
    	 UserFrame frame = currentstate.mouseDown(item);
    	 return frame;
     }
}

⌨️ 快捷键说明

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