⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sound.java~29~

📁 俄罗斯方块游戏,大学时写的,支持单机及点对点网络对战!同时我还在里面加入了使用技能的功能!不过有一个缺点,呵呵好象代码写的不够严谨,所以现在性能很低,我一直也没有优化它!
💻 JAVA~29~
字号:
package ct;

import java.net.*;
import javax.swing.*;
import java.io.*;
import java.util.*;

public class sound {
  Tetrics m_tetrics;
  public java.applet.AudioClip audioClip0;//播放开始音效对象
  public java.applet.AudioClip audioClip;//播放背景声音对象
  public java.applet.AudioClip audioClip1;//播放按键声音对象
  public java.applet.AudioClip audio;////播放默认背景声音对象
  JScrollPane jScrollPane1 = new JScrollPane();
  String cx="../";
  java.net.URL url;//存放背景音效
  java.net.URL a_url;//存放默认背景音效
  java.net.URL url0;//存放开始音效
  java.net.URL url1_0;//存放变形按键音效
  java.net.URL url1_1;//存放下落按键音效
  java.net.URL url1_2;//存放消行按键音效

  String name; //用于保存文件路径
  String filename;


  public sound(Tetrics tttt) {
    m_tetrics=tttt;
    initpath();
  }
///////////////////////////////////////////////////////////////
  public void initpath(){
    try{
      a_url=new URL("file://cx:/YY方块/music/back1.mid");
      url0 = new URL("file://cx:/YY方块/music/kaishi.wav");

      url1_0=new URL("file://cx:/YY方块/music/bianxing.wav");
      url1_1=new URL("file://cx:/YY方块/music/xialou.wav");
      url1_2=new URL("file://cx:/YY方块/music/xiaohang.wav");

    }
    catch(Exception error)
           {error.printStackTrace();}
  }
  public void remov_voice(){
    try{
            audioClip1=java.applet.Applet.newAudioClip(url1_2);
            audioClip1.play();
         }
         catch(Exception error)
           {error.printStackTrace();}

  }
  public void down_voice(){
    try{
            audioClip1=java.applet.Applet.newAudioClip(url1_1);
            audioClip1.play();
          }
      catch(Exception error)
      {error.printStackTrace();}

  }
  public void remot_voice(){
    try{
                audioClip1=java.applet.Applet.newAudioClip(url1_0);
                audioClip1.play();
               }
            catch(Exception error)
            {error.printStackTrace();}

  }

  public void start_voice(){
    try{
      if(m_tetrics.isPlay==false){
        audioClip0 = java.applet.Applet.newAudioClip(url0);
        audioClip0.play();
        audio = java.applet.Applet.newAudioClip(a_url);
        audio.loop();
      }
      else{
        audioClip0 = java.applet.Applet.newAudioClip(url0);
        audioClip0.play();
          }
         }
                  catch(Exception error)
                  {error.printStackTrace();}

  }

 public void open_voicefile(){
   //打开声音文件
     JFileChooser fileChooser1 = new JFileChooser(); //定义一个JFileChooser对象
       fileChooser1.setCurrentDirectory(new File("."));
       fileChooser1.setFileFilter(new javax.swing.filechooser.FileFilter() {
         public boolean accept(File f) { //设定可用的文件的后缀名
           String name = f.getName().toLowerCase();
           return name.endsWith(".au") || f.isDirectory();
         }

         public String getDescription() {
           return "Audio files";
         }
       });
       int t = fileChooser1.showOpenDialog(m_tetrics.m_tFrame);
       if (t == JFileChooser.APPROVE_OPTION) {
         name = fileChooser1.getSelectedFile().getAbsolutePath(); //返回文件的绝对路径名
         try {
           url = fileChooser1.getSelectedFile().toURL(); //将选择的文件转化为URL
           m_tetrics.m_tFrame.jTextField1.setText(name);
           audioClip = java.applet.Applet.newAudioClip(url);
           m_tetrics.m_tFrame.jButton9.setEnabled(true);
         }
         catch (Exception error) {
           error.printStackTrace();
         }
       }

   }
  public void play_voice(){
    try {
       if(audio!=null)
        audio.stop();
        audioClip.loop(); //循环播放音频片断
        m_tetrics.isPlay=true;
    }
     catch (Exception error) {
        error.printStackTrace();
      }

  }
  public void stop_voice(){
    try {
           audioClip.stop(); //停止播放音频片断
         }
         catch (Exception error) {
           error.printStackTrace();
         }

  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -