• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

java实现播放背景音乐

java 搞代码 4年前 (2022-01-05) 46次浏览 已收录 0个评论

这篇文章主要为大家详细介绍了java实现播放背景音乐,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java实现播放背景音乐的具体代码,供大家参考,具体内容如下

测试源码

播放背景音乐类

 package forGame; import javax.sound.sampled.*; import java.io.File; //测试背景音乐播放(只能播放.wav文件) public class Demo_2 { //需要传入要播放的文件 void playMusic(File file) { try { //创建相当于音乐播放器的对象 Clip clip = AudioSystem.getClip(); //将传入的文件转成可播放的文件 AudioInputStream audioInput = AudioSystem.getAudioInputStream(file); //播放器打开这个文件 clip.open(audioInput); //clip.start();//只播放一次 //循环播放 clip.loop(Clip.LOOP_CONTINUOUSLY); } catch(Exception ex){ ex.printStackTrace(); } //死循环不让主程序结束(swing可不用) /* while(true){ } */ } }

窗口类

 package forGame; import javax.imageio.ImageIO; import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; //动态效果 public class Demo_1 extends JFrame{ //背景 private BufferedImage bufferedImage; //窗体大小 private int width; private int height; //照片数组 private BufferedImage[] images = new BufferedImage[4]; //要绘制动态图片中的那张 private BufferedImage image; //背景音乐 private File bgm; //播放音乐类对象 private Demo_2 demo_2 = new Demo_2(); //初始化 { if(bufferedImage == null){ try { bufferedImage = ImageIO.read(new File("src\\image\\背景.png-600")); for(int i = 1;i <images.length + 1;i ++) images[i - 1] = ImageIO.read(new File("src\\image\\大飞机爆炸" + i + ".png-600")); } catch (IOException e) { e.printStackTrace(); } } width = bufferedImage.getWidth(); height = bufferedImage.getHeight(); image = images[0]; bgm = new File("src\\music\\bgm.wav"); } public Demo_1(){ super("动态测试"); //设置窗口 setSize(width,height); setLocationRelativeTo(null); setResizable(false); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); //启动线程 MyThread myThread = new MyThread(); myThread.start(); //播放背景音乐 demo_2.playMusic(bgm); } //双缓冲绘制解决图片闪烁问题 @Override public void paint(Graphics g) { Image image = this.createImage(width,height); Graphics gImage = image.getGraphics(); gImage.setColor(gImage.getColor()); gImage.fillRect(0,0,width,height); supe<i style="color:transparent">来源gaodai$ma#com搞$代*码*网</i>r.paint(gImage); //绘制背景 gImage.drawImage(bufferedImage,0 ,0 ,null ); //绘制动态图片 gImage.drawImage(this.image,0 ,100 ,null ); //最后绘制缓冲后的图片 g.drawImage(image,0 ,0 , null); } private int num = 0;//images数组内图片索引 //线程内部类 private class MyThread extends Thread{ @Override public void run() { while(true) { if(num <= 3) { image = images[num ++]; } else num = 0; repaint(); try { sleep(100);//每隔100毫秒重绘一次 } catch (InterruptedException e) { e.printStackTrace(); } } } } public static void main(String[] args) { new Demo_1(); } }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持gaodaima搞代码网

以上就是java实现播放背景音乐的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:java实现播放背景音乐
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址