I want to have my application react to barcodes being scanned to trigger button presses. For example the user could scan the ((PRINT)) barcode to activate the print button.<
This is my approach. It's working. Just get the miliseconds for ensure doesn't read twice. Just add a Key Listener (implemented in the same JFrame).
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
logger().info("keytyped" + e.getKeyChar() + " code "+e.getKeyCode());
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
logger().info("all keys " + keyspressed);
return;
}
// will not last more than a second...
if (keyspressed == null || System.currentTimeMillis() - currentTimeMillis > 1000) {
keyspressed = e.getKeyChar()+"";
currentTimeMillis = System.currentTimeMillis();
} else {
keyspressed = keyspressed + e.getKeyChar();
currentTimeMillis = System.currentTimeMillis();
}
}
private String keyspressed = null;
private long currentTimeMillis = System.currentTimeMillis();