Результаты поиска по запросу "event-dispatch-thread"

2 ответа

+1 за хорошую ссылку.

ге, которую я читаю, каждый пример GUI с многопоточностью имеет что-то вроде этого: public static void main(String[] args) throws Exception { EventQueue.invokeLater(new Runnable() { public void run() { JFrame frame = new SomeKindOfFrame(); ...

2 ответа

О EDT (Java)

Я прочитал ряд статей в Интернете о том, когда что-то должно выполняться в EDT, а когда - нет. Но я все еще не уверен, что понимаю, поэтому я хотел бы задать несколько вопросов по этому поводу: Какие части кода будут запускаться по ...

3 ответа

Но никогда не используйте это. Ну, если вы не гордитесь и не пишете быструю утилиту, которая затем вышла из-под контроля и стала основным приложением, и у вас нет времени разбирать код на части, чтобы выяснить, что может работать на работнике, и что будет обрыв из-за интеграции с Swing / SQL, которые не являются потокобезопасными.

ли сделать это стандартным способом? Вот сценарий. Начните делать что-то дорогое в EDT (EDT блокируется, пока дорогая операция не закончится). Пока EDT был заблокирован, пользователь продолжал нажимать / перетаскивать кнопки мыши. Все ...

ТОП публикаций

5 ответов

хм ... это не считается (прямым, вот где правило) инициируемым пользователем событием: пользователь обновляет файл (внутри свинга, на EDT) и сохраняет его (нажатием кнопки на EDT), который запускает уведомление об обновлении файла ОС (внешнее колебание, выключено EDT), это уведомление достигает монитора (выключен EDT), который отвечает за обновление GUI на EDT

опрос связан сSwingUtilities.invokeLater, Когда я должен использовать это? Нужно ли использовать каждый раз, когда мне нужно обновить компоненты графического интерфейса? Что именно это делает? Есть ли альтернатива этому, так как это не звучит ...

2 ответа

Ваша проблема в том, что вы делаете что-то трудоемкое в обратном вызове ActionPerformed, который выполняется в потоке событий. В обратных вызовах вы должны сделать что-то быстро и вернуться, даже если это «что-то» порождает поток. Графический интерфейс не может обновляться, пока вы занимаетесь потоком событий, он будет обновляться только после возврата вашего обратного вызова.

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { int count = jSlider1.getValue(); int delay = jSlider2.getValue(); int valueOfSlider = jSlider2.getValue(); int valueOfSlider2 = jSlider1.getValue(); while (count > 0) { ...

4 ответа

Как вы используете поток рассылки событий?

Я узнал о том, что качели не являются потокобезопасными. Углубившись глубже, я обнаружил, что каждая модификация компонента Swing должна выполняться в потоке диспетчеризации событий, чтобы предотвратить различные проблемы, связанные ...

2 ответа

Почему setSelected на JCheckBox теряет эффект?

Может кто-нибудь объяснить мне, почему я потерял выбор (установленsetSelected()) заJCheckBox когда я положуJOptionPane вItemListener? Это ошибка? Любопытно, что если этот процесс затягивается сinvokeLater(), setSelected() работает правильно, как ...

2 ответа

обновление JProgressBar во время обработки

Я знаю, что этот вопрос уже был замечен во многих Вопросах и на него даны ответы, но все же я не могу пройти через него. я всего-лишь хочуобновлять ProgressBar при извлечении некоторых вещейбольшого файла XML. Я думал, что этого было достаточно, ...

1 ответ

Как запустить JOptionPane на EDT?

яВсе еще возникли проблемы с пробеломJOptionPanes. На основе исследований в SO и вДокументы JavaЭто, очевидно, связано с тем, что вы не используетеEDT, Мой вопрос, как именноEDT и его методы применяются кJOptionPane? Например, вывод ошибки ...

4 ответа

используя sleep () для одного потока

Я довольно новичок в Java, и я начинаю использовать различные темы, чтобы использоватьwait() или жеsleep() на одной части моего кода, а другие все еще работают. Для этого проекта я используюJFrame сjavax.swing.* а такжеjava.awt.* импорт. То, что ...