📄 keytester.java
字号:
import java.applet.*; import java.awt.*; public class KeyTester extends Applet { boolean m_bGotFocus = false; Event m_evtList[]; public void init() { resize(400,300); m_evtList = new Event[10]; } public void paint(Graphics g) { Font font; g.setColor( Color.lightGray ); g.draw3DRect(1,1,size().width-4,size().height-4,true); g.setColor( Color.black ); if( !m_bGotFocus ) { font = new Font("TimesRoman", Font.BOLD, 20); g.setFont(font); g.drawString("鼠标点击此处开始键盘测试",70,150); return; } font = new Font("TimesRoman", Font.BOLD,12); g.setFont(font); g.drawString("键", 20, 50); g.drawString("事件", 70, 50); g.drawString("组合功能键", 120, 50); g.drawString("键值", 210, 50); g.drawString("事件值", 250, 50); g.drawString("组合功能键值", 310, 50); for( int i = 0; i < m_evtList.length; i++ ) { if( m_evtList[i] != null ) showEvent( g, m_evtList[i], 80+(i*20) ); } } public void showEvent( Graphics g, Event evt, int row ) { Font font = new Font("TimesRoman", Font.PLAIN, 12); String outputStr = ""; char ch; g.setFont(font); if( evt.key == 32 ) outputStr = "<space>"; else if( evt.key > 32 && evt.key < 127 ) outputStr = ""+(char)evt.key; else if(evt.key >= evt.HOME && evt.key <= evt.F12) outputStr = getFunctionKeyString( evt.key ); else outputStr = "<n/a>"; g.drawString(outputStr, 20, row); if( evt.id == evt.KEY_PRESS || evt.id == evt.KEY_ACTION ) outputStr = "KeyDown"; else if( evt.id == evt.KEY_RELEASE || evt.id == evt.KEY_ACTION_RELEASE ) outputStr = "KeyUp"; else outputStr = ""; g.drawString(outputStr, 70, row); outputStr = ""; if( evt.controlDown() ) outputStr += "CTRL "; if( evt.shiftDown() ) outputStr += "SHIFT "; if( evt.metaDown() ) outputStr += "META "; if( (evt.modifiers & Event.ALT_MASK) != 0 ) outputStr += "ALT "; g.drawString(outputStr, 140, row); outputStr = ""+evt.key; g.drawString(outputStr, 210, row); outputStr = ""+evt.id; g.drawString(outputStr, 260, row); outputStr = ""+evt.modifiers; g.drawString(outputStr, 340, row); } public String getFunctionKeyString(int key) { String keyStrings[] = {"HOME","END","PGUP","PGDN","UP","DOWN", "LEFT","RIGHT","F1","F2","F3","F4","F5", "F6","F7","F8","F9","F10","F11","F12"}; int keyOffset = key - Event.HOME; if( keyOffset < 0 || keyOffset >= keyStrings.length ) return "<n/a>"; return keyStrings[(key-Event.HOME)]; } public boolean gotFocus(Event evt, Object arg) { m_bGotFocus = true; repaint(); return true; } public boolean lostFocus(Event evt, Object arg) { m_bGotFocus = false; repaint(); return true; } public boolean keyDown(Event evt, int key) { addEvent( evt ); return true; } public boolean keyUp(Event evt, int key) { addEvent( evt ); return true; } public void addEvent(Event evt) { for( int i = (m_evtList.length-1); i > 0; i-- ) m_evtList[i] = m_evtList[i-1]; m_evtList[0] = evt; repaint(); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -