cara eu to fazendo um editor de texto para deficientes visuais a� tenho uma tabela que guarda os sons e duas classes que gerenciam os eventos de mouse e teclado a� est�o elas:
import java.applet.*;
import java.net.*;
import java.util.*;
import java.io.*;
import java.net.*;
import java.util.*;
import java.io.*;
//classe para gerenciamento de arquivos de som
public class TabelaSons extends Hashtable{
private URL dirBase;//diret�rio onde est�o os arquivos de �udio
//chaves para entrada da tabela
private String sons[];
//diretorio onde se encontram os arquivos de som
private File dirSons;
//construtor
public TabelaSons(){
try{
dirBase = new URL("file:" + System.getProperty("user.dir") +
System.getProperty("file.separator")+"HomeroSons"+
System.getProperty("file.separator"));
}catch(MalformedURLException e){
e.printStackTrace();
}
//carregando arquivos do diret�rio de som paar o array de sons
dirSons = new File(dirBase.getPath());
//lista arquivos do diret�rio
sons = dirSons.list();
carregaTabela();
}
//m�todo para pegar som da tabela
public AudioClip getSom(String nomeSom) {
return (AudioClip)get(nomeSom);
}
//m�todo para colocar sons na tabela
public void putSom(AudioClip som,String nomeSom){
put(nomeSom,som);
}
//retorna o diret�rio base
public URL getDirBase(){
return dirBase;
}
//m�todo para setar o diret�rio base
public void setDirBase(URL novoDir){
dirBase = novoDir;
}
//m�todo para carregar sons na tabela
public void carregaTabela(){
for(int i=0;i<sons.length;i++){
try {
putSom(Applet.newAudioClip(new URL(dirBase,sons[i])), sons[i]);
System.out.println(sons[i]);
} catch (MalformedURLException e){
e.printStackTrace();
}
}
}
}
public class TabelaSons extends Hashtable{
private URL dirBase;//diret�rio onde est�o os arquivos de �udio
//chaves para entrada da tabela
private String sons[];
//diretorio onde se encontram os arquivos de som
private File dirSons;
//construtor
public TabelaSons(){
try{
dirBase = new URL("file:" + System.getProperty("user.dir") +
System.getProperty("file.separator")+"HomeroSons"+
System.getProperty("file.separator"));
}catch(MalformedURLException e){
e.printStackTrace();
}
//carregando arquivos do diret�rio de som paar o array de sons
dirSons = new File(dirBase.getPath());
//lista arquivos do diret�rio
sons = dirSons.list();
carregaTabela();
}
//m�todo para pegar som da tabela
public AudioClip getSom(String nomeSom) {
return (AudioClip)get(nomeSom);
}
//m�todo para colocar sons na tabela
public void putSom(AudioClip som,String nomeSom){
put(nomeSom,som);
}
//retorna o diret�rio base
public URL getDirBase(){
return dirBase;
}
//m�todo para setar o diret�rio base
public void setDirBase(URL novoDir){
dirBase = novoDir;
}
//m�todo para carregar sons na tabela
public void carregaTabela(){
for(int i=0;i<sons.length;i++){
try {
putSom(Applet.newAudioClip(new URL(dirBase,sons[i])), sons[i]);
System.out.println(sons[i]);
} catch (MalformedURLException e){
e.printStackTrace();
}
}
}
}
import java.awt.event.*;
import java.awt.Component;
import java.awt.Component;
//classe para gerenciara eventos de teclado
public class TecladoFalante extends GeradorEventos implements KeyListener{
//atributo
private String extensaoArqAudio;
//construtor
public TecladoFalante(Component obj,TabelaSons tabela){
super(obj,tabela);
extensaoArqAudio = ".wav";
obj.addKeyListener(this);
}
public void keyPressed(KeyEvent evt){
//seta o audio de acordo com a letra do teclado
setAudio(evt.getKeyText(evt.getKeyCode())+extensaoArqAudio);
if(getAudio()==null){
//seta o audio para mensagem de tecla n�o encontrada
setAudio("TeclaDesconhecida.wav");
getAudio().play();
}else{
getAudio().play();
}
}
public void keyReleased(KeyEvent evt){}
public void keyTyped(KeyEvent evt){}
//m�todo para retornar a extens�o do �udio
public String getExtensaoArqAudio(){
return extensaoArqAudio;
}
//m�todo para setar a extens�o de �udio
public void setExtensaoArqAudio(String novaExtensao){
extensaoArqAudio = novaExtensao;
}
}
public class TecladoFalante extends GeradorEventos implements KeyListener{
//atributo
private String extensaoArqAudio;
//construtor
public TecladoFalante(Component obj,TabelaSons tabela){
super(obj,tabela);
extensaoArqAudio = ".wav";
obj.addKeyListener(this);
}
public void keyPressed(KeyEvent evt){
//seta o audio de acordo com a letra do teclado
setAudio(evt.getKeyText(evt.getKeyCode())+extensaoArqAudio);
if(getAudio()==null){
//seta o audio para mensagem de tecla n�o encontrada
setAudio("TeclaDesconhecida.wav");
getAudio().play();
}else{
getAudio().play();
}
}
public void keyReleased(KeyEvent evt){}
public void keyTyped(KeyEvent evt){}
//m�todo para retornar a extens�o do �udio
public String getExtensaoArqAudio(){
return extensaoArqAudio;
}
//m�todo para setar a extens�o de �udio
public void setExtensaoArqAudio(String novaExtensao){
extensaoArqAudio = novaExtensao;
}
}
import java.awt.event.*;
import java.awt.Component;
import java.awt.Component;
//classe para gerenciara eventos de mouse
public class MouseFalante extends GeradorEventos implements MouseListener{
private String nomeSom;//nome do arquivo de som associado ao componente ouvinte
//construtor
public MouseFalante(Component obj,TabelaSons tabela,String nomeSom){
super(obj,tabela);
this.nomeSom = nomeSom;
//seta �udio correspondente ao nome do Som especificado
setAudio(nomeSom);
obj.addMouseListener(this);
}
public void mouseEntered(MouseEvent evt){
getAudio().play();
}
public void mouseClicked(MouseEvent evt){}
public void mousePressed(MouseEvent evt){}
public void mouseReleased(MouseEvent evt){}
public void mouseExited(MouseEvent evt){}
//m�todo para retornar nomeSom
public String getNomeSom(){
return nomeSom;
}
//m�todo para setar nomeSom
public void setNomeSom(String novoSom){
nomeSom = novoSom;
setAudio(novoSom);
}
}
public class MouseFalante extends GeradorEventos implements MouseListener{
private String nomeSom;//nome do arquivo de som associado ao componente ouvinte
//construtor
public MouseFalante(Component obj,TabelaSons tabela,String nomeSom){
super(obj,tabela);
this.nomeSom = nomeSom;
//seta �udio correspondente ao nome do Som especificado
setAudio(nomeSom);
obj.addMouseListener(this);
}
public void mouseEntered(MouseEvent evt){
getAudio().play();
}
public void mouseClicked(MouseEvent evt){}
public void mousePressed(MouseEvent evt){}
public void mouseReleased(MouseEvent evt){}
public void mouseExited(MouseEvent evt){}
//m�todo para retornar nomeSom
public String getNomeSom(){
return nomeSom;
}
//m�todo para setar nomeSom
public void setNomeSom(String novoSom){
nomeSom = novoSom;
setAudio(novoSom);
}
}
cara obrigado por me responder se vc puder me ajudar ficaria mais agradecido ainda Valeu...
Regis Melo <[EMAIL PROTECTED]> wrote:
Regis Melo <[EMAIL PROTECTED]> wrote:
Arthur,
Qual o problema? O q acontece? Qual o codigo?
Arthur Rocha wrote:
> To com um problema em uma hashtable. Carrego 54 arquivos de �udio com
> as chaves correspondendo ao nome dos arquivos. Por�m quando tento
> tocar sons a partir da 32 chave o som n�o � reproduzido.Agradeceria a
> ajuda.
>
> ------------------------------------------------------------------------
> Yahoo! Mail
>
> agora ainda melhor: 100MB, anti-spam e antiv�rus gr�tis!
-------------------------------------------------------------------------------------------
Ceara' Java User Group
Para cancelar sua assinatura, envie um e-mail para: [EMAIL PROTECTED]
Para mais informacoes, mande um e-mail para: [EMAIL PROTECTED]
Falar com o administrador? e-mail para: [EMAIL PROTECTED]
Yahoo! Mail agora ainda melhor: 100MB, anti-spam e antiv�rus gr�tis!
