inputaction.java
来自「<j2me 开发精解> 詹建光著 里所有的源码。对J2me的开发相当」· Java 代码 · 共 59 行
JAVA
59 行
package com.j2medev.chapter5.example;
public class InputAction {
//两种检测模式
public static final int MODE_NORAML = 0;
public static final int MODE_INITAL_ONLY = 1;
//三种按键状态
private static final int STATE_PRESSED = 1;
private static final int STATE_RELEASED = 2;
private static final int STATE_HOLDON = 3;
//检测模式变量
private int mode;
//按键状态变量
private int state;
public InputAction() {//按照MODE_NORAML模式初始化
this(MODE_NORAML);
}
public InputAction(int mode) {//按照指定模式初始化
this.mode = mode;
this.state = STATE_RELEASED;
reset();
}
public synchronized void press() {//按下
if (state != STATE_HOLDON) {
state = STATE_PRESSED;
}
}
public synchronized void release() {//抬起
state = STATE_RELEASED;
}
public synchronized void reset() {//重置
release();
}
public synchronized void tap() {//模拟一次按键
press();
release();
}
public synchronized boolean isPressed() {//根据不同模式,判断是否按下按键
int lastState = state;
if (state == STATE_PRESSED && mode == MODE_INITAL_ONLY) {
state = STATE_HOLDON;
}
return lastState == STATE_PRESSED;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?