[英]Java jLayer GUI Application freezes while playing the music
我正在處理一個需要背景音樂的 Java 項目,因此我使用 jLayer(Java 平台的 MP3 庫)來提高我的項目的適用性和性能。
我需要在JFileChooser
的幫助下播放音樂,以便用戶可以輕松地從菜單欄中運行自己的音樂。
但是每當我嘗試運行任何隨機音樂時,整個 GUI 應用程序都會凍結。
任何人都可以幫我修復這個代碼嗎?
每當我嘗試在“JFileChooser”的幫助下從菜單欄中運行任何隨機音樂時,整個 GUI 應用程序都會凍結
從偵聽器執行的代碼在Event Dispatch Thread (EDT)
。 該線程負責響應事件並重新繪制 GUI。 如果您執行一個較長的任務(如播放音樂),則 GUI 無法響應事件。
您需要在單獨的Thread
上啟動音樂播放器。 一種方法是使用SwingWorker
,它提供了在使用 Swing 時有用的附加功能。
有關更多信息,請閱讀Swing 中的並發性教程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.