Sounddatei

Status
Nicht offen für weitere Antworten.

777

Bekanntes Mitglied
Hi Leute,
Im Selben Ordner wie von meinem Applet befindet sich die Sounddatei tot1.wav.
Eig müsste doch sobald ich auf den Button klicke die Datei abgespielt werden.
Das funktioniert jedoch nicht :(

Code:
import java.io.*;
import java.awt.*;
import java.applet.*;

public class Applet1 extends Applet
{
	public void init()
	{
		setLayout(null);
		setSize(426,266);
		button1.setLabel("button");
		add(button1);
		button1.setBackground(java.awt.Color.lightGray);
		button1.setBounds(84,96,97,29);
		SymMouse aSymMouse = new SymMouse();
		button1.addMouseListener(aSymMouse);
	}
	java.awt.Button button1 = new java.awt.Button();

	class SymMouse extends java.awt.event.MouseAdapter
	{
		public void mousePressed(java.awt.event.MouseEvent event)
		{
			Object object = event.getSource();
			if (object == button1)
				button1_MousePressed(event);
		}
	}

	void button1_MousePressed(java.awt.event.MouseEvent event)
	{
                                try 
                                {
                                    AudioClip sound = Applet.newAudioClip (new File ("tot1.wav").toURL());
                                    sound.play();
                                } 
                                catch(Exception e) 
                                {

                                } 	
			 
	}
}

cya
David
 

Campino

Top Contributor
Versuch mal die URL über ein Applet.getCodeBase() zu erzeugen. Ansonsten guck mal nach ob eine Fehlermeldung in der Java Konsole steht kommt.

Ansonsten arbeitet man bei Button im Normalfall mit ActionListenern, nicht mit MouseListenern (bzw. Adaptern)
 

777

Bekanntes Mitglied
Das bei Java ist auch eine Insel hatte ich bereits gelesen und es auch genauso ausprobiert :(
Habe es jetzt mit einem Aktionevent gemacht aber leider kommt der selbe Fehler :(

Code:
import java.awt.*;
import java.applet.*;
import java.io.*;

public class Applet1 extends Applet
{
	public void init()
	{
		setLayout(null);
		setSize(426,266);
		button1.setLabel("button");
		add(button1);
		button1.setBackground(java.awt.Color.lightGray);
		button1.setBounds(120,132,125,36);
		SymAction lSymAction = new SymAction();
		button1.addActionListener(lSymAction);
	}
	
	java.awt.Button button1 = new java.awt.Button();

	class SymAction implements java.awt.event.ActionListener
	{
		public void actionPerformed(java.awt.event.ActionEvent event)
		{
			Object object = event.getSource();
			if (object == button1)
				button1_ActionPerformed(event);

		}
	}

	void button1_ActionPerformed(java.awt.event.ActionEvent event)
	{
       try
       {
           AudioClip sound = Applet.newAudioClip (new File ("tot1.au").toURL());
           sound.play();
       }
       catch(Exception e)
       {

       } 
			 
	}
}

cya
David
 

The_S

Top Contributor
Wenn "immernoch" der Selbe Fehler kommt wäre es vielleicht hilfreich wenn du den Fehler postest. Ich schätze mal es dürfte sich hier um eine SecurityException handeln. Also lade das Sound-File über getCodeBase() wie es Campino schon vorgeschlagen hat.
 

777

Bekanntes Mitglied
Es ist wie verhext aber es geht immer noch nicht:

Code:
import java.applet.*; 
import java.awt.*; 
import java.awt.event.*; 

public class MyApplet extends Applet implements ActionListener 
{ 
  AudioClip Sound; 
  Button Play; 

  public void init() 
  { 
    Sound = getAudioClip(getCodeBase(), "tot.au"); 
    Play = new Button("Sound abspielen"); 
    Play.addActionListener(this); 
    add(Play); 
  } 

  public void actionPerformed(ActionEvent ev) 
  { 
    Sound.play(); 
  } 
}
 

The_S

Top Contributor
1. macht es dir Spaß die wiederholten Fragen nach der genauen Fehlermeldung zu ignorieren? Gut es geht jetzt, aber für die Zukunft wäre es hilfreich
2. du kannst mit deinem Browser compilen bzw. dein Compiler kann Applets anzeigen??? :shock:
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben