sound.java~20~

来自「俄罗斯方块游戏,大学时写的,支持单机及点对点网络对战!同时我还在里面加入了使用技」· JAVA~20~ 代码 · 共 141 行

JAVA~20~
141
字号
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;//播放按键声音对象
  JScrollPane jScrollPane1 = new JScrollPane();
  String cx="../";
  java.net.URL 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{
      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");

      url = new URL("file://cx:/YY方块/music/back1.mid");


    }
    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();
        audioClip = java.applet.Applet.newAudioClip(url);
        audioClip.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(m_tetrics.isPlay==true)
        audioClip.stop();
        audioClip.loop(); //循环播放音频片断
      //  audio.stop();
    }
     catch (Exception error) {
        error.printStackTrace();
      }

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

  }

}

⌨️ 快捷键说明

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