我試圖第一次使用progressBar。我想使用progressBar保留線程的記錄---我看過this,但它沒有幫助。如何使用progressBar查看線程進度
有誰知道如何做到這一點?
我嘗試使用mp3文件的字節來更新progressBar,但我沒有成功。 我想用我用來播放mp3文件的線程。
這是MP3播放器的屏幕截圖。
我試圖第一次使用progressBar。我想使用progressBar保留線程的記錄---我看過this,但它沒有幫助。如何使用progressBar查看線程進度
有誰知道如何做到這一點?
我嘗試使用mp3文件的字節來更新progressBar,但我沒有成功。 我想用我用來播放mp3文件的線程。
這是MP3播放器的屏幕截圖。
通常的問題是,你還需要適當的GUI刷新更新進度條的值時。前段時間我使用進度條進行了異步加載,在那裏我使用了該教程。
請注意,對於壓縮音頻文件,字節計數器的使用可能不準確,最初沒有進行完整的解壓縮,可能不是您想要的。
這當然是必不可少的,您設置進度條的值和最小&最大適當地使用constructor和/或setMaximum(),setMinimum()和setValue(),開始玩之前,例如
progressBar.setMinimum(0);
progressBar.setMaximum(totalTime);
progressBar.setValue(0);
但不
progressBar.setValue(elapsedTime);
從你的工作線程,使用PropertyChangeListener
接口和SwingWorker
setProgress()從工人實例中,如下面的例子。 只需將代碼適應你的需求:
我正在考慮使用線程監視線程---但這似乎是不可能的,因爲它需要知道線程將運行多長時間。我決定使用額外的庫來獲取Id3v2標籤---用它來查找mp3文件的長度。我將會有一個額外的線程,使用stackoverflow.com/questions/2437141/run-java-thread-at-specific-times不斷更新progressBar。 @Sam謝謝你! – Adeeb 2013-02-09 10:51:53
不客氣。我建議使用該教程的代碼保持簡單,因爲它必須工作。您的實際問題似乎是檢索播放狀態。雖然Java 7有/有一些不好的安全漏洞,你會有一些不錯的FX類來播放MP3文件,它們也提供了準確的播放狀態:http://stackoverflow.com/a/10237397/1175253 – Sam 2013-02-09 11:00:18
IF HTML5允許你可以檢查的新進展標籤:http://www.w3schools.com/tags/tag_progress.asp
我認爲他的意思是Java(沒有腳本) – Miquel 2013-02-09 10:38:47
您已經閱讀教程。我們可以添加什麼?它沒有幫助嗎?有什麼問題?你嘗試過什麼嗎?代碼在哪裏? – 2013-02-09 10:17:35