我有以下代码来打开媒体文件:
public static void playMusic(File string, int time, String ProcessName) throws Exception {
Desktop d1 = Desktop.getDesktop();
d1.open(string);
Thread.sleep(time + 500);
kill(ProcessName);
}
然后我用:
playMusic(FILELOCATION, FILELENGTH, PROCESSNAME);
这将打开媒体文件并播放其中的内容,然后关闭。我想知道是否有办法让媒体文件窗口出现时不可见。我真的不会让用户每次都看到Windows媒体窗口弹出。
答案 0 :(得分:1)
我认为最好的答案是“不要那样做”
Desktop.open()
的重点是在用户桌面上打开文件,用户可以在其中看到该文件。如果您不希望用户看到它,请不要这样做。在这种情况下,你最好还是:
尝试使用Java原生声音API;例如http://docs.oracle.com/javase/tutorial/sound/playing.html或
明确启动一些外部播放器应用程序...为其提供应用程序特定选项以隐藏播放器的GUI。
除了使用桌面在概念上是错误的方法之外,您还要依赖系统/用户将音频文件类型绑定到适当的播放器工具。这可能在某些平台上存在问题。 (虽然说实话,如果您使用专有或专利保护的音频文件格式,整个区域可能会出现问题。)