Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.09 KB | None | 0 0
  1. import javax.swing.*;
  2. import java.io.*;
  3. import javax.sound.sampled.*;
  4. import java.util.Timer;
  5. import java.util.TimerTask;
  6.  
  7. public class Alarm {
  8.     private static String audioFile; //오디오 파일명
  9.     private Clip clip; //오디오 재생클립
  10.     private AudioInputStream audioInputStream; //스트림
  11.     private static int count=0; //타이머 시행횟수
  12.    
  13.     public void wristVoice(int click) {
  14.         switch(click) {
  15.         case 50:
  16.             this.setFlie("50click_tts.wav");
  17.             this.playAudioFile();
  18.             break;
  19.         case 100:
  20.             this.setFlie("100click_tts.wav");
  21.             this.playAudioFile();
  22.             break;
  23.         case 500:
  24.             this.setFlie("500click_tts.wav");
  25.             this.playAudioFile();
  26.             break;
  27.         case 1000:
  28.             this.setFlie("1000click_tts.wav");
  29.             this.playAudioFile();
  30.             break;
  31.         }
  32.     } //end func
  33.    
  34.     public void wristMessage(int click) {
  35.         String str;
  36.         if(click == 1000) {
  37.             str = click + "번 마우스를 클릭하셨습니다.\n컴퓨터를 종료하여 주세요!";
  38.            
  39.             JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.WARNING_MESSAGE);
  40.         } else {
  41.             str = click + "번 마우스를 클릭하셨습니다.\n건강에 유의하여주세요.";
  42.            
  43.             JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
  44.         }
  45.     } //end func
  46.    
  47.     public void posVoice() {
  48.         this.setFlie("position_tts.wav");
  49.         this.playAudioFile();
  50.     }
  51.    
  52.     public void posMessage() {
  53.         String str = "자세 교정 시간입니다.\nhttps://youtu.be/iw-WLD5v26c";
  54.        
  55.         JOptionPane.showMessageDialog(null, str, "자세 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
  56.     }
  57.    
  58.     public void eyeVoice(int time) {
  59.         switch(time) {
  60.         case 1:
  61.             this.setFlie("1hour_tts.wav");
  62.             this.playAudioFile();
  63.             break;
  64.         case 2:
  65.             this.setFlie("2hours_tts.wav");
  66.             this.playAudioFile();
  67.             break;
  68.         case 3:
  69.             this.setFlie("3hours_tts.wav");
  70.             this.playAudioFile();
  71.             break;
  72.         case 4:
  73.             this.setFlie("4hours_tts.wav");
  74.             this.playAudioFile();
  75.             break;
  76.         case 5:
  77.             this.setFlie("5hours_tts.wav");
  78.             this.playAudioFile();
  79.             break;
  80.         }
  81.     } //end func
  82.    
  83.     public void eyeMessage(int time) {
  84.         String str;
  85.         if(time == 5) {
  86.             str = time + "동안 모니터를 주시하셨습니다.\n컴퓨터를 종료하여 주세요!";
  87.            
  88.             JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.WARNING_MESSAGE);
  89.         } else {
  90.             str = time + "동안 모니터를 주시하셨습니다.\n건강에 유의하여주세요.";
  91.            
  92.             JOptionPane.showMessageDialog(null, str, "눈 건강 알림창", JOptionPane.INFORMATION_MESSAGE);
  93.         }
  94.     } //end func
  95.    
  96.     public void setFlie(String file) { //파일 경로 설정
  97.         audioFile = file;
  98.     } //end func
  99.    
  100.     public void playAudioFile() { //.Wav 재생, setFile 이후 실행가능
  101.          
  102.         try {
  103.  
  104.             Clip clip = AudioSystem.getClip();
  105.            
  106.             File clap = new File(audioFile);
  107.             clip.open(AudioSystem.getAudioInputStream(clap));
  108.             clip.start();
  109.  
  110.             Thread.sleep(clip.getMicrosecondLength()/1000);
  111.            
  112.             clip.stop();
  113.  
  114.         } catch(Exception e) {
  115.             e.printStackTrace();
  116.         }
  117.     } //end func
  118.    
  119. } //end class
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement