Я прочитал это утверждение, что «GUI показан на EDT». Может кто-нибудь, пожалуйста, объясните мне это заявление, я знаю, что прослушиватели событий выполняются на EDT, но как GUI может отображаться на EDT.GUI показан на EDT
ответ
Утверждение «GUI показано на EDT» является неточным и вводящим в заблуждение. Действительная правда заключается в том, что все операции с объектами GUI, включая их создание, должны происходить на EDT. Из этого следует, что все действия, приводящие к отображению элементов GUI на экране, также происходят на EDT.
EDT несет ответственность за все. Он принимает любые события (щелчки мыши/клавиатуры и т. Д.), А затем вызывает любые действия на основе событий. Если вы хотите что-либо сделать в пользовательском интерфейсе (показать код и т. Д. Из кода), EDT снова отвечает за его отображение на экране.
В идеале, все ваши инициализации кнопок (действия UI и т. Д.) Должны выполняться EDT, хотя это необязательно (в android это). В документе говорится, что не выполнять длительные задачи для: Как уже упоминалось, поскольку EDT обрабатывает все, если EDT занят длительной задачей, тогда любые щелчки мыши и т. Д. Не могут быть обработаны EDT, создавая зависания в опыте пользовательского интерфейса.
- 1. EDT на Swing (для чайников)
- 2. Java API «Запуск на EDT, если не на EDT»
- 3. Создание объекта на EDT
- 4. GUI застрял, если для цикла выполняется внутри EDT
- 5. Демо от Sun делает вещи GUI вне EDT?
- 6. Java: GUI должны быть инициализированы в потоке EDT?
- 7. Java-потоки: пусть функция EDT ожидает долговременной работы от EDT
- 8. Признание блокировки Swing EDT
- 9. Преобразование EDT в UTC по EDT
- 10. вызов invokeAndWait из EDT
- 11. Java EDT и нерестительные диалоги
- 12. EDT vs. Listener
- 13. EDT, асинхронный, синхронный
- 14. GUI Glitch: текст в блоке не показан в Windows 8
- 15. Таблица StandardOutline не показан в GUI Затмения Scout
- 16. Сделать thread run on non EDT (поток отправки событий) из EDT
- 17. Изменение размера AssetGroupId EDT
- 18. Проблемы с EDT-качанием
- 19. Редактор EDT - современный подход?
- 20. Понимание EDT и разделение объектов?
- 21. Java Swing EDT & Concurrency
- 22. Как остановить Swing EDT
- 23. Должны ли обновляться графики JUNG на EDT?
- 24. Должно ли system.out.println быть на edt?
- 25. Отправка задания с EDT на главный?
- 26. Java: EDT, SwingUtilities & GUILock
- 27. Когда начинается EDT?
- 28. Thread из EDT
- 29. EDT для GMT Конверсия
- 30. Об EDT (Java)
см. Учебник Oracle [Совместимость в Swing] (http://docs.oracle.com/javase/tutorial/uiswing/concurrency/initial.html) и прочитайте вопросы и ответы, нажав на тег EventDispatchThread (добавленный к вашему вопросу) – mKorbel
Я читал, что в документе говорится, что вы не должны выполнять длительную задачу по EDT, иначе GUI может замерзнуть. Но события должны идти в очередь событий. – user2594479
'(Но события должны продолжаться в очереди событий.)' EDT очищает все события за один момент до экрана, затем/после EDT пуст – mKorbel