問題タブ [event-dispatch-thread]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
9177 参照

java - JPanel からコンポーネントを動的に削除する

問題を説明する実行可能なコードは次のとおりです-

s1 と s2 は削除できますが、s3 は削除できません。
デフォルトのレイアウトでも同じ動作が見られるため、これはMigLayoutに関連していないようです(たまたま使用しています)。

0 投票する
3 に答える
2535 参照

java - Java EDT (イベント ディスパッチ キュー) をフラッシュする必要がある

多くのスレッドが StyledTextBox に急速に書き込みを行っている Java アプリがあります。ある時点で、すべてのスレッドが終了します。ただし、おそらくディスパッチ キューが少しバックアップされたため、TextBox はしばらくテキストを受信し続けます。スレッドが終了したときに TextBox への更新がすぐに終了するように、何らかの方法で EDT を強制的にフラッシュすることは可能ですか?

ありがとう、ジム

0 投票する
1 に答える
3190 参照

java - スレッド "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 2 で例外が発生するのはなぜですか?

JTable のデータを更新しようとするたびに、このエラーが発生します。

データは正常に更新されているように見えますが、何かがうまくいかず、私のコードを参照していないことが気になります。しばらくデバッグした後、次のコード行が問題の原因であることがわかりました。

ボタンをクリックしてリストをフィルタリングすると、スレッドが作成されて開始されます。その後、データベースに戻って、既にフェッチされたものを超える可能性のあるデータを取得します。後で新しいフェッチが必要かどうかを判断し、その場合にのみ上記を実行し、それ以外の場合は、既にフェッチされた結果をフィルタリングするだけです。

0 投票する
3 に答える
4759 参照

java - アプリケーションコードと同時に動作する Java プログレスバー

私は Java の初心者です。プログレス バーとアプリケーション コードを同時に実行する方法を教えてください。つまり、アプリケーション コードが何らかの処理を行っている限り、プログレス バーをインクリメントさせたいと考えています。詳しく説明してください。それをコードで。2 つのスレッドを同時に追加する必要があると思います。1 つのスレッドがプログレスバー スレッドを更新しますが、それが正しい方法かどうかはわかりません。私はプログレスバーをインクリメントするためにこのコードを書きました(ハードコードされています)

0 投票する
2 に答える
559 参照

java - フォーカスが失われた後にイベント キューを延期する

JTableカスタムセルエディターを使用しています。エディターが実装されFocusListenerているため、ユーザーがセルから離れた場所をクリックした場合に、セルの内容が有効かどうかを確認できます。

JOptionPanewithin focusLost(in the EventDispatchThread) を使用して、ユーザーが古い値に戻すか、調整された値を受け入れるかを選択できるようにしたいと思います。

ここに問題があります。ユーザーがセルを編集しているときに、テーブルから離れたボタンをクリックすると、ボタンが戻るactionlistenersにアラートが表示されます。 JOptionPane

これは私がしたいことです:

  • ユーザーがセルを編集
  • ユーザーがボタンをクリック
  • セルがフォーカスの喪失を検出
  • JOptionPane が表示され、ユーザーがアクションを選択する
  • JOptionPane が閉じ、セルの値が設定されます
  • 呼び出されたボタンの actionListeners

代わりに、これが起こっています:

  • ユーザーがセルを編集
  • ユーザーがボタンをクリック
  • セルがフォーカスの喪失を検出
  • JOptionPane が表示され、ユーザーがアクションを選択する
  • 呼び出されたボタンの actionListeners
  • JOptionPane が閉じ、セルの値が設定されます

JOptionPaneが閉じられるまでボタンのアクション イベントを延期することは可能ですか?

JDialog他のスレッドから、ダイアログ自体がイベントを処理できるように、イベントのディスパッチが継続されるようにする魔法を読んだことがあります。

0 投票する
1 に答える
396 参照

java - EDTおよびその他のスレッド関係はrepaint()メソッドjavaに関する

GUIがEDTによって確実にビルドされた場合、他のスレッドでの再ペイント呼び出しはEDTでのペイントを呼び出しますか?そうでない場合は、どうすれば確実に実行できるか、効率が高いほど良いです。

0 投票する
3 に答える
198 参照

java - コンソールから入力を取得した後、スイングウィンドウが表示されない

ファイルをロードするためのシンプルなスイングウィンドウがあります。

これは、クラスanalyzedLoadの関数に表示されますanalyzedloads()

ユーザーからの入力を取得せずに関数を適用する場合は、すべて問題ありません。しかし、私がユーザーから入力を得るところ、このように:

ウィンドウは表示されず、プロセスは何もせずに実行を継続します。

ありがとう。

0 投票する
2 に答える
9833 参照

java - 処理中に JProgressBar を更新する

この件はすでに多くの質問で見られ、回答されていることは知っていますが、それでも理解できません。

大きなxmlファイルの一部を抽出しながら、progressBarを更新したいだけです。時間のかかるループを別のスレッドに入れるだけで十分だと思いましたが、..私が取得できたのは、progressBar がまったく表示されないか、最後に更新されるか、閉じられる直前だけです。

アプリケーションの起動に近い場所でインスタンス化されたもの:

JProgressBar を使用して JDialog を表示および更新している間:

だから私はこのmyXMLParserを持っています:

SwingWorkerイベントを使用してプログレスバーを更新する多くのことを見てきPropertyChangeましたが、例は常にオールインワンであり、処理とプログレスバーが同じクラス内にあり、クラス内にクラスがあります。それを私の状況に翻訳することはできません。

何か助けはありますか?.. (あまり明白ではない) アドバイスはありますか?

編集: btantlingerのおかげで、次のように機能しました:

0 投票する
0 に答える
177 参照

java - Java JLabel はフォントを自動的に変更します

非常に大規模な JavaEE アプリケーションに多数のさまざまなコンポーネントがあります。そのため、デバッグは苦痛であり、悲しいことに、私が抱えている問題を正確に表す SSCCE を提供することはできません。

JLabels一言で言えば、どういうわけか私のフォントはやのようなもののために自動的に変化しますJTabbedPanes。それらに触れることなく、それらは太字、イタリック体、劇的なサイズ変更、またはそれらの組み合わせで再描画されています。

簡単な質問: なぜ?

Eclipse デバッガーをステップ実行しても、何も変更されません。したがって、時間は何らかの要因です。

私はまだ Java グラスホッパー (自分で作業している) であり、EDT が神聖なオブジェクトであるような方法でこのプログラムを作成していません。repaint()JTabbedPane、JLabel、およびその他のフォント プロパティがリセットされて再描画されるという EDT のすべての呼び出しを行っていない可能性があるため、私は心配しています。

編集:

Java 1.5 に限定されていることを忘れていました。

JLabels および JTabbedPane のタブ タイトルで HTML を使用する際の問題に絞り込んだと思いますが、それ以降はわかりません。JTabbedPane に関しては、適切なFont/FontMetricsオブジェクトを使用して描画メソッドに入りますが、何らかの理由で、フォント、スタイル、さらにはテキストを描画するサイズ。

0 投票する
2 に答える
837 参照

java - あるクラスから別のクラスに変数を渡す

皆さん、こんにちは。私はEclipseを使用しており、プログラムはコンパイルおよび実行中です。3 つのクラスがあり、それらは同じパッケージに入っています。そのため、クラス ThreadQuizCountdown の i の値を他のクラス PanelQuizCountdown int に timeField という名前の JTextField に渡したいのですが、現在 i がコンソールに表示されています。ここにコードがあります