Hallo liebe Community ,
ich habe hier ein kleines "Anfänger Programm" geschrieben, ein Button, der nicht klickbar ist. Jetzt wollte ich die "can`t touch this" Musik einfügen, aber irgendwie bekomme ich einen Error, wenn ich den Dateipfad eingebe... Hier mal das Programm und der Error:
und hier der Error:
Das ist der Error ... Ich hoffe ihr könnt mir helfen, dass ich eine .wav Datei hier einbinden kann.
Das ist mein Code, für das Abspielen der Datei:
[JAVA=51] try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("c:/touch.wav"));
AudioFormat af = audioInputStream.getFormat();
int size = (int) (af.getFrameSize() * audioInputStream.getFrameLength());
byte[] audio = new byte[size];
DataLine.Info info = new DataLine.Info(Clip.class, af, size);
audioInputStream.read(audio, 0, size);
// for(int i=0; i < 32; i++) {
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(af, audio, 0, size);
clip.loop(Clip.LOOP_CONTINUOUSLY);
clip.start();
// }
}catch(Exception e){ e.printStackTrace(); }
[/code]
Mit freundlichen Grüßen
sweti3
ich habe hier ein kleines "Anfänger Programm" geschrieben, ein Button, der nicht klickbar ist. Jetzt wollte ich die "can`t touch this" Musik einfügen, aber irgendwie bekomme ich einen Error, wenn ich den Dateipfad eingebe... Hier mal das Programm und der Error:
Java:
import java.awt.Color;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import javax.sound.sampled.AudioFileFormat;
import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.UnsupportedAudioFileException;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.jws.Oneway;
import javax.sound.sampled.AudioInputStream;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.WindowConstants;
import javax.swing.SwingUtilities;
import javax.sound.sampled.*;
import java.io.*;
import javax.sound.sampled.*;
import java.io.*;/**
* This code was edited or generated using CloudGarden's Jigloo
* SWT/Swing GUI Builder, which is free for non-commercial
* use. If Jigloo is being used commercially (ie, by a corporation,
* company or business for any purpose whatever) then you
* should purchase a license for each developer using Jigloo.
* Please visit [url=http://www.cloudgarden.com]Cloud Garden (Java Resources)[/url] for details.
* Use of Jigloo implies acceptance of these licensing terms.
* A COMMERCIAL LICENSE HAS NOT BEEN PURCHASED FOR
* THIS MACHINE, SO JIGLOO OR THIS CODE CANNOT BE USED
* LEGALLY FOR ANY CORPORATE OR COMMERCIAL PURPOSE.
*/
import javax.sound.sampled.*;
import java.io.*;
public class NoTouch extends javax.swing.JFrame {
private JButton jBuKlick;
/**
* Auto-generated main method to display this JFrame
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
NoTouch inst = new NoTouch();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
});
try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("c:/touch.wav"));
AudioFormat af = audioInputStream.getFormat();
int size = (int) (af.getFrameSize() * audioInputStream.getFrameLength());
byte[] audio = new byte[size];
DataLine.Info info = new DataLine.Info(Clip.class, af, size);
audioInputStream.read(audio, 0, size);
// for(int i=0; i < 32; i++) {
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(af, audio, 0, size);
clip.loop(Clip.LOOP_CONTINUOUSLY);
clip.start();
// }
}catch(Exception e){ e.printStackTrace(); }
}
public NoTouch() {
super();
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null);
getContentPane().setBackground(new java.awt.Color(0,255,64));
this.setFocusTraversalKeysEnabled(false);
this.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent evt) {
thisMouseEntered(evt);
}
});
{
jBuKlick = new JButton();
getContentPane().add(jBuKlick);
jBuKlick.setText("cant touch this ! :D");
jBuKlick.setBounds(12, 23, 224, 21);
jBuKlick.setBackground(new java.awt.Color(255,21,255));
jBuKlick.addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent evt) {
jBuKlickMouseEntered(evt);
}
public void mouseClicked(MouseEvent evt) {
jBuKlickMouseEntered(evt);
}
});
}
pack();
setSize(400, 300);
} catch (Exception e) {
//add your error handling code here
e.printStackTrace();
}
}
private void jBuKlickMouseEntered(MouseEvent evt) {
double zufallszahl = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
zufallszahl = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
zufallszahl = zufallszahl * 400;
// 1 addieren: Zufallszahl zwischen 1 und 10:
zufallszahl = zufallszahl + 1;
int weite = (int) zufallszahl;
double hei = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
hei = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
hei = hei * 400;
// 1 addieren: Zufallszahl zwischen 1 und 10:
hei = hei + 1;
int höhe = (int) hei;
double x = evt.getPoint().getX();
double y = evt.getPoint().getY();
int a = (int) x;
int y2 = (int) y;
double Buttonx = jBuKlick.getX();
double Buttony = jBuKlick.getY();
int Buttonxx = (int) Buttonx;
int Buttonyy = (int) Buttony;
jBuKlick.move(höhe, weite);
double hehe = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
hehe = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
hehe = hehe * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
hehe = hehe + 1;
int farbe1 = (int) hehe;
double baba = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
baba = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
baba = baba * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
baba = baba + 1;
int farbe2 = (int) baba;
double hqhq = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
hqhq = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
hqhq = hqhq * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
hqhq = hqhq + 1;
int farbe3 = (int) hqhq;
this.getContentPane().setBackground(new Color(farbe1, farbe2, farbe3));
double htht = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
htht = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
htht = htht * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
htht = htht + 1;
int farbeButton1 = (int) htht;
double hrhr = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
hrhr = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
hrhr = hrhr * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
hrhr = hrhr + 1;
int farbeButton2 = (int) hrhr;
double tztz = 0;
// Zuerst eine Zufallszahl zwischen 0 und 1 erzeugen:
tztz = Math.random();
// mal 9: Zufallszahl zwischen 0 und 9:
tztz = tztz * 254;
// 1 addieren: Zufallszahl zwischen 1 und 10:
tztz = tztz + 1;
int farbeButton3 = (int) tztz;
jBuKlick.setBackground(new Color(farbeButton1, farbeButton2,farbeButton3));
/**
* @param args the command line arguments
*/
}
private void thisMouseEntered(MouseEvent evt) {
System.out.println("this.mouseEntered, event="+evt);
//TODO add your code for this.mouseEntered
}
}
und hier der Error:
Code:
java.io.FileNotFoundException:
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(Unknown Source)
at com.sun.media.sound.WaveFileReader.getAudioInputStream(Unknown Source)
at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
at NoTouch.main(NoTouch.java:45)
this.mouseEntered, event=java.awt.event.MouseEvent[MOUSE_ENTERED,(131,141),absolute(651,421),button=0,clickCount=0] on frame0
this.mouseEntered, event=java.awt.event.MouseEvent[MOUSE_ENTERED,(131,70),absolute(651,350),button=0,clickCount=0] on frame0
Das ist der Error ... Ich hoffe ihr könnt mir helfen, dass ich eine .wav Datei hier einbinden kann.
Das ist mein Code, für das Abspielen der Datei:
[JAVA=51] try{
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(new File("c:/touch.wav"));
AudioFormat af = audioInputStream.getFormat();
int size = (int) (af.getFrameSize() * audioInputStream.getFrameLength());
byte[] audio = new byte[size];
DataLine.Info info = new DataLine.Info(Clip.class, af, size);
audioInputStream.read(audio, 0, size);
// for(int i=0; i < 32; i++) {
Clip clip = (Clip) AudioSystem.getLine(info);
clip.open(af, audio, 0, size);
clip.loop(Clip.LOOP_CONTINUOUSLY);
clip.start();
// }
}catch(Exception e){ e.printStackTrace(); }
[/code]
Mit freundlichen Grüßen
sweti3