Hulp nodig met methode

Status
Niet open voor verdere reacties.

BasDeJonge

Gebruiker
Lid geworden
1 mrt 2011
Berichten
102
Hallo!

Ik heb al eerder een vraag gesteld over een musicplayer, maar daar heb ik door mijn slechte vraagstelling niet het antwoord gekregen waar ik naar zocht. Vandaar dat ik hem hier iets anders stel. Kan iemand mij misschien helpen met deze musicplayer. Hij kan wel spelen maar niet stoppen. Kan iemand misschien een stop-methode voor mij schrijven? Het liefst heb ik geen heel ander project. Het zou fijn zijn als deze gewoon afgemaakt kon worden!
Dit is wat ik tot nu heb. De musicplayer zonder stop-methode.

import java.io.*;

import sun.audio.*;

public class PlayAudio {

public void playSound()

{
try{
AudioPlayer p = AudioPlayer.player;
AudioStream as = new AudioStream(new FileInputStream("SP0000.wav"));
p.start(as);
}
catch(IOException IOE){}
}

}

Alvast bedankt voor alle hulp!!
-Bas
 
Laatst bewerkt:
Waarschijnlijk zou iets als het onderstaande wel moeten werken:

[cpp]
public class PlayAudio {
private AudioPlayer player;

public PlayAudio() {
player = AudioPlayer.player;
}

// ...

public void stop() {
player.stop();
}
}
[/cpp]
 
Hardstikke bedankt voor de reactie! Dan krijg ik dus dit...? Maar dat werkt ook niet! Heb ik het fout gedaan?

[cpp]
import java.io.*;

import sun.audio.*;

public class PlayAudio {
private AudioPlayer player;
public PlayAudio()
{
player = AudioPlayer.player;
}


public void playSound()
{
try{
AudioPlayer p = AudioPlayer.player;
AudioStream as = new AudioStream(new FileInputStream("MapleStory - Lith Harbor 2.wav"));
p.start(as);
}
catch(IOException IOE){}
}

public void stop()
{
player.stop();
}

}
[/cpp]
 
Ik had een random link uit Google aangeklikt en daar werd een verkeerde methode aangegeven. Maar als je in de documentatie zelf kijkt (zie: http://javasourcecode.org/html/open-source/jdk/jdk-6u23/sun/audio/AudioPlayer.html) dan zie je de juiste methode om aan te roepen. Om je huidige code werkend te krijgen zou je daarom iets als het onderstaande moeten schrijven:

[cpp]
public class PlayAudio {
private AudioPlayer player;
private AudioStream audioStream;

public PlayAudio() {
player = AudioPlayer.player;
try {
audioStream = new AudioStream(new FileInputStream("MapleStory - Lith Harbor 2.wav"));
} catch (IOException ex) {
// ...
}
}

public void play() {
player.start(audioStream);
}

public void stop() {
player.stop(audioStream);
}
}
[/cpp]

Om ook meerdere bestanden af te kunnen spelen zou je bijvoorbeeld de onderstaande methode kunnen toevoegen:

[cpp]
public void play(File file) {
try {
audioStream = new AudioStream(new FileInputStream(file.getCanonicalPath()));
} catch (IOException ex) {
// ...
}
}
[/cpp]
 
Hardstikke bedankt dat werkt inderdaad prima...
maar dat andere bestanden toevoegen helaas niet wat vul ik daar in?
 
Je zult echt moeten leren om de documentatie te raadplegen. In de code zie je bijvoorbeeld dat de methode een argument van het type File heeft. Als je in Google zoekt op 'java file' dan zie je als eerste de volgende link staan: http://docs.oracle.com/javase/1.4.2/docs/api/java/io/File.html

Daar staat precies beschreven hoe je dit type kunt gebruiken. In dit geval zou je dus een aanroep kunnen doen in de vorm van: autoPlayObject.play(new File("c:\\eenbestand.wav"));
 
Ja u hebt gelijk. Ik ben nog maar eerstejaars programmeur. Maar in ieder geval bedankt voor uw reactie! Nu kan ik hem eindelijk gebruiken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan