В основном у меня 2 JFrame
окна, одно из которых содержит апплет.Я пытаюсь отправить набранный ключ в апплет.
@Override
public void keyReleased(KeyEvent e) {
dispatchKeyTyped(e.getID(),e.getModifiers(),e.getKeyCode(),e.getKeyChar(),e.getKeyLocation());
}
@Override
public void keyTyped(KeyEvent e) {
dispatchKeyTyped(e.getID(),e.getModifiers(),e.getKeyCode(),e.getKeyChar(),e.getKeyLocation());
}
public void dispatchKeyTyped(int id, int modifiers, int keycode, char keychar, int keylocation) {
applet.getComponent(0).dispatchEvent(new KeyEvent(applet,id,System.currentTimeMillis(),modifiers,keycode,keychar,keylocation));
}
При попытке сделать это ничего не происходит, ключ не отправляется.Если я заменим код, отправив KeyEvent
следующим образом:
@Override
public void keyReleased(KeyEvent e) {
dispatchKeyTyped(e);
}
@Override
public void keyTyped(KeyEvent e) {
dispatchKeyTyped(e);
}
public void dispatchKeyTyped(KeyEvent event) {
applet.getComponent(0).dispatchEvent(event);
}
Кажется, это работает нормально, но я хочу создать KeyEvent
сам и не уверен, почему первый пример не работает.