Должны ли ключевые привязки быть объявлены внутри EDT? - PullRequest
0 голосов
/ 20 марта 2020

Я не смог найти много информации о Java привязках клавиш и безопасности потоков.

У меня есть такой фрагмент кода:

        getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(
            KeyEvent.VK_LEFT, 0), "leftArrowKey");
        getActionMap().put("leftArrowKey", new LeftArrowListener());

        getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke(
            KeyEvent.VK_RIGHT, 0), "rightArrowKey");
        getActionMap().put("rightArrowKey", new RightArrowListener());

Должен ли этот код всегда сохраняться внутри EDT?

Или это нормально, чтобы поместить это в отдельный поток?

1 Ответ

2 голосов
/ 20 марта 2020

Есть части Swing, которые враждебны . Не определено, какие части. Поэтому просто делайте все, качайте на EDT.

...