📄 keyinputsensor.java
字号:
package simbad.sim;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.Graphics;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import javax.swing.JPanel;import simbad.gui.Simbad;public class KeyInputSensor extends SensorDevice implements KeyListener{ /** Last input , -1 if none */ int lastKey; JPanel panel; public KeyInputSensor(){ super.create3D(true); lastKey = -1; //KeyboardFocusManager kfm = KeyboardFocusManager.getCurrentKeyboardFocusManager(); //Component comp = kfm.getPermanentFocusOwner(); //comp.addKeyListener(this); } public JPanel createInspectorPanel(){ panel = new KeyInputSensorJPanel(this); return panel; } /* * a JPanel for displaying the eye image. */ public class KeyInputSensorJPanel extends JPanel { private static final long serialVersionUID = 1L; Font font; Color color; final static int HEIGHT=12; public KeyInputSensorJPanel(KeyListener listener){ color = new Color(0,0,0); Dimension d= new Dimension(50,HEIGHT); setPreferredSize(d); setMinimumSize(d); font = new Font("Arial",Font.PLAIN,HEIGHT-2); /* // receive key event in parent this.addKeyListener(parent); // this.requestFocusInWindow(true); this.requestFocus(); setFocusable(true); */ Simbad.getSimbadInstance().getDesktopPane().addKeyListener(listener); } protected void paintComponent( Graphics g){ super.paintComponent(g); g.setFont(font); g.drawString("last key :"+KeyEvent.getKeyText(lastKey),HEIGHT+10,HEIGHT-1); } } public void keyTyped(KeyEvent event) { } public void keyPressed(KeyEvent event) { lastKey = event.getKeyCode(); panel.repaint(); } public void keyReleased(KeyEvent arg0) { lastKey = -1; panel.repaint(); } public int getLastKey() { return lastKey; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -