私は、次の、作成のJButtonにアクションを追加したが、私はシステムを見ることができていますが、私のコンポーネントが取得されていないスイング - JButtonのテキストは(のsetTextに応答しない)
private void myButtonActionPerformed(java.awt.event.ActionEvent evt) {
txtResult.setText("");
myButton.setText("Working ...");
myButton.setEnabled(false);
myButton.repaint();
System.out.println("Doing Action ...");
SwingUtilities.invokeLater(new Runnable() {
public void run() { // some code inside that is memory intensive
}
});
segmentButton.setText("Original Text");
segmentButton.setEnabled(true);
}
私のコードですJFrame上の他のコンポーネントを、スレッド全体がブロックされているかのように更新することができません。
'...スレッド全体がブロックされているかのように 'です。 Swingはシングルスレッドです - SwingUtilitiesを使用してEDTに集中的なコードを配置すると、Swingの更新がブロックされます。別のスレッドまたはSwingWorkerを使用してください – copeg
Thanks @copeg!あなたのアドバイスに基づいて回答を追加しました。 – WiredCoder