WAV-Datei in textpane abspielen

ren92

Mitglied
Hallo Leute,
da ihr mir heute schon mal so toll geholfen habt, hab ich mir gedacht ich stell gleich nochmal eine frage^^

wie kann ich aus einem jTextPane die x, und y koordinaten auslesen, sodass an einem bestimmten intervall ein ton asugeben wird!?

Java:
addMouseListener(new java.awt.event.MouseAdapter() {
			public void mouseEntered(java.awt.event.MouseEvent me) {
				AudioClip 	clip = null;
				JTextPane editor = (JTextPane)me.getSource();     
				Point point = new Point(me.getX(), me.getY());
				int pos = editor.viewToModel(point);
				
				//if ((pos >=10) && (pos <=50)) { 
		           // if ((y>=10) && (y<=50)) {
				try {	
					clip = Applet.newAudioClip (getClass().getResource("/sounds/cut.wav"));
				} catch (Exception e1){}
				
				clip.play();
		            }
				//}
			//}
		});

könnte das so gehen?
oder ist das zu viel des guten?^^
 
ich hab ein bild an einer bestimmten stelle im textpane eingefügt und wenn ich dann mit der maus über das bild fahre, soll er mir einen ton ausgeben!
dazu ist es doch am besten, wenn ich die koordinaten auslese oder?
MfG
 
???:L Was hat denn das Eine mit dem Anderen zu tun?

Mhm wahrscheinlich im Zusammenhang mit dem MouseListener....

So wie ich dich verstehe willst du, wenn an einer bestimmten Stelle/Text in dem TextPane geklickt wird ein Sound abgespielt wird?! An sich siehts doch gar nicht so schlecht aus dann was du da gemacht hast(zwar einiges doppelt gemoppelt und überflüssig, aber funktionieren sollte das doch oder?(wozu die y-Abfrage eig.?).

Kannst du denn den Sound überhaupt abspielen? (am Besten auch nicht jedes mal newAudioClip aufrufen, einmal zu Beginn initialisieren reicht wohl....evtl. auch das Abspielen in einen extra Thread auslagern!

Vllt irgendwie so:
Java:
//...clip = Applet.newAudioClip.....
				pane.addMouseListener(new MouseAdapter() {
					@Override
					public void mouseClicked(MouseEvent e) {
						int i = pane.viewToModel(e.getPoint());
						if (i >= 10 && i <= 50) {
							new Thread(new Runnable() {  //wobei das evtl. nicht nötig ist - ka
								@Override
								public void run() {
									clip.play();
								}
							}).start();
						}
					}
				});

Aber am Besten du erklärst nochmal was du genau vor hast, was funktioniert, was funktioniert nicht?
 

Zurück
Oben