我正试着用下面的代码在我的程序背景中制作一个简单的mp3播放器:
Media med = new Media(getClass().getResource("intro.mp3").toExternalForm());
MediaPlayer mPlayer = new MediaPlayer(med);
mPlayer.play();
intro.mp3文件和其他文件一起放在我的包的bin文件夹中。类文件。
问题是我的程序终止于:
Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized
完整的终止日志是:
Device "Intel(R) HD Graphics Family" (\\.\DISPLAY1) initialization failed :
WARNING: bad driver version detected, device disabled. Please update your driver to at least version 8.15.10.2302
Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized
at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:153)
at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:148)
at javafx.application.Platform.runLater(Platform.java:52)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:450)
at javafx.scene.media.MediaPlayer.<init>(MediaPlayer.java:365)
at PokerApp.<init>(PokerApp.java:33)
at PokerApp.main(PokerApp.java:105)
根据问题的原因,有人有任何想法吗?
还有一种方法可以显式初始化工具包,方法是调用:com.sun.javafx.application.PlatformImpl#startup(Runnable)
由于使用了*Impl,所以有点麻烦,但如果您出于某种原因不想使用Application
或JXFPanel
,则很有用。
为了避免初始化异常,您必须调用Application.launch()方法或者简单地实例化一个新的JFXPanel()类(即使它不用于任何事情)。这将在应用程序启动时启动JavaFxRuntime
要实例化JFXPanel,请在代码中添加以下代码行
final JFXPanel fxPanel = new JFXPanel();
导入以下包
import javafx.embed.swing.JFXPanel;
JavaFX
在启动时执行“隐藏”初始化。运行媒体播放器
不会触发初始化。
触发它的最简单方法是:
Application.launch()
应用程序的
程序(例如,从 Netbeans JavaFX 项目构建)Platform.startup(Runnable) (
Java 9 )问题内容: 我正在尝试使用以下命令在程序的后台播放一个简单的mp3: intro.mp3文件与其他.class文件放在我的包的bin文件夹中。 问题是我的程序终止于: 完整的终止日志为: 根据问题的原因有人有想法吗? 问题答案: 在启动时执行“隐藏”初始化。运行不会触发初始化。 触发它的最简单方法是: 已经执行 具有从fx ant任务打包的jar运行的基础程序(例如,从Netbeans JavaF
我遵循了本教程:http://what-when-how.com/javafx-2/playing-audio-using-the-media-classes-javafx-2-part-1/ 我有相应的资源文件夹在相应的目录中。类文件,但我仍然不能播放音频。mp3文件与教程中的不同,但我也有一个. wav等效文件,发现JavaFX可以开箱播放*. wav文件,但不能播放mp3文件。怎么回事啊?
我在 C# 应用程序中播放.MP3文件方面经验不足,但我需要这样做。我尝试在周末编写一个简单的.NET Core 3控制台应用程序。它工作正常。我以为很容易将我在家里做的事情复制到我的工作环境中,但它并没有播放到.MP3文件。下面是我正在编写的 WPF 应用中的代码: 两者之间的区别在于我在家里写了一个。NET Core 3.1控制台应用程序。在工作中它是一个。NET 4.5.2 WPF应用程序。
我正在用JavaFX开发我认为应该是一个简单的任务的media player,它将在用户默认的音乐文件夹路径(使用fedora)中播放存储在本地硬盘驱动器上的mp3文件。我可以很好地从命令行播放所有mp3文件,但当我尝试通过javafx.scene.media库播放时,javafx一直告诉我mp3是一种受支持的媒体类型。我已经下载了我能找到的每一个图书馆,但没有用。下面是一个实际尝试打开文件并播放
我想在Windows7下使用JavaFX(Java版本1.8.0_05)的MediaPlayer播放电影文件。我使用了FileChooser类,因此在我的应用程序中,可以在运行时选择本地文件和UNC网络文件。 摘自我的代码: 如果选择了本地文件,则一切正常。例如,Media对象包含以下URL(在调试器中读出): ...媒体播放器可以毫无问题地构建。 我已将此文件复制到我的NAS驱动器。现在,如果从
我的应用程序是基于Swing的。我想介绍JavaFX,并将其配置为在辅助显示器上呈现场景。我可以使用JFrame来保存JFXPanel,JFXPanel可以保存JFXPanel,但我希望使用JavaFX API来实现这一点。 将com.sun.glass.ui.application子类化并使用application.launch(这)不是一个选项,因为调用线程将被阻塞。 编辑:结论 问题:非平凡