我正在嘗試爲Swing中的某些方法處理添加進度條。我想在方法開始時同時開始進度,並在結束時結束。我在網上找到了使用SwingWorker
並分配任務的示例。然而,在我的情況下,我想在按鈕點擊時執行相同的操作。附於btnTest.addActionListener(this);
並在actionPeformed
以下執行。我嘗試了多種方式來同時運行兩個線程,但都沒有按照需要運行,即並行運行。或者酒吧掛起,直到按下按鈕被釋放,然後進度條開始。任何人都可以提出一種方法來解決這個問題?同時在內部運行線程執行進度條僅顯示方法的進程執行
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnTest) {
>>>
1. Add progress BAR thread 1
2. call the method for with progress bar should start thread 2
3. start both thread simultaneously
4. End progress BAR
>>>
}
}
*在執行搖擺工人的方法:「我已經找到樣本過網使用'SwingWorker'並分配任務。」 *是的,就是這樣它應該完成。 *「但是,就我而言,我希望在按鈕單擊時執行相同的操作。」*可以在按鈕單擊時調用它。如果你無法處理這個問題,我建議編輯添加你最佳嘗試的[mcve]。 –
我同意。我真的堅持調用兩個線程同時運行。也許我無法理解它。必須進一步研究並刪除我現在的代碼中的缺陷。並感謝您的回覆。你有算法的例子嗎?你建議! – yeppe
*「您是否有示例示例」?SO既不是代碼生成機器,也不是搜索引擎的替代品,但請參見[Swing中的併發:工作線程和SwingWorker:具有臨時結果的任務](https:// docs .oracle.com/javase/tutorial/uiswing/concurrency/interim.html)作爲開始。 –