那我该怎么解决呢?有人能帮我吗?
提前感谢您的帮助!谨致问候。
private static final long THRESHOLD = 100;
private static final int MIN_BARCODE_LENGTH = 8;
private final StringBuffer barcode = new StringBuffer();
private long lastEventTimeStamp = 0L;
DefaultListModel dlm = new DefaultListModel();
KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher()
{
@Override
public boolean dispatchKeyEvent(KeyEvent e)
{
if (e.getID() != KeyEvent.KEY_RELEASED)
{
return false;
}
if (e.getWhen() - lastEventTimeStamp > THRESHOLD)
{
barcode.delete(0, barcode.length());
}
lastEventTimeStamp = e.getWhen();
if (e.getKeyCode() == KeyEvent.VK_ENTER)
{
if (barcode.length() >= MIN_BARCODE_LENGTH)
{
jList1.setModel(dlm);
dlm.addElement(barcode.toString().trim());
}
barcode.delete(0, barcode.length());
} else {
barcode.append(e.getKeyChar());
}
return false;
}
});