我第一次尝试弄乱progressBar。我想使用 progressBar 记录线程 --- 我确实看过这个,但它没有帮助。
有谁知道如何做到这一点?
我尝试使用 mp3 文件的字节来更新 progressBar,但没有成功。我想使用我用来播放 mp3 文件的线程。
这是mp3播放器的截图。
我第一次尝试弄乱progressBar。我想使用 progressBar 记录线程 --- 我确实看过这个,但它没有帮助。
有谁知道如何做到这一点?
我尝试使用 mp3 文件的字节来更新 progressBar,但没有成功。我想使用我用来播放 mp3 文件的线程。
这是mp3播放器的截图。
通常的问题是,在更新进度条的值时,您还需要适当的 GUI 刷新。前段时间我使用进度条进行了异步加载,在那里我使用了该教程。
请注意,对于压缩的音频文件,字节计数器的使用可能不准确,如果最初没有完全解压缩,可能不是您想要的。
当然,在开始播放之前,您必须使用构造函数和/或setMaximum()、setMinimum()和setValue()适当地设置进度条的值和最小值和最大值,例如
progressBar.setMinimum(0);
progressBar.setMaximum(totalTime);
progressBar.setValue(0);
但不是
progressBar.setValue(elapsedTime);
从您的工作线程中,使用工作实例中的PropertyChangeListener
接口和setProgress(),SwingWorker
如下例所示。只需根据您的需要调整代码:
如果允许 HTML5,您可以查看新的进度标签:http ://www.w3schools.com/tags/tag_progress.asp