|
Buscador
Secciones
Otras zonas
Registro
Foros
Recomendamos
|
El applet SoundExample proporciona una arquitectura para cargar y ejecutar múltiples sonidos en un applet. Por esta razón, es más complejo de lo necesario. Esencialmente, el código de carga y ejecución de sonidos se cuece aquí: AudioClip onceClip, loopClip; onceClip = applet.getAudioClip(getCodeBase(), "bark.au"); loopClip = applet.getAudioClip(getCodeBase(), "train.au"); onceClip.play(); //Play it once. loopClip.loop(); //Start the sound loop. loopClip.stop(); //Stop the sound loop. Como no hay nada más aburrido que un applet que contínuamente hace ruido; después de dejar su página, el applet SoundExample deja de ejecutar el bucle de sonidos, y empieza la ejecución cuando el usuario vuelve a la página. Hace esto implementando sus métodos stop y start de esta forma:
public void stop() {
//If one-time sound were long, we'd stop it here, too.
//looping is a boolean instance variable that's initially
//false. It's set to true when the "Start sound loop" button
//is clicked and to false when the "Stop sound loop" or "Reload
//sounds" button is clicked.
if (looping) {
loopClip.stop(); //Stop the sound loop.
}
}
public void start() {
if (looping) {
loopClip.loop(); //Restart the sound loop.
}
}
El applet SoundExample usa tres clases:
Precargar los sonidos en un thread de segundo plano (con SoundLoader) mejora el rendimiento percivido reduciendo la cantidad de tiempo que el usuario tiene que esperar para poder interactúar con el applet. Hace esto reduciendo la cantidad de tiendo que gasta en el método init. Si simplemente llamamos a getAudioClip en el método init del applet, pasaría bastante tiempo antes de getAudioClip volviera, lo que significa que el applet no podría ejecutar otras sentencias de su método init, y que el método start del applet no podría ser llamado. (Para este applet un retardo en la llamda al método start no importa). Otra ventana de la carga de sonidos en un thread se segundo plano es que permite al applet responder apropiadamente (e inmediatamente) a las entradas del usuario que normalmente harán que se ejecute el sonido, incluso si el sonido no se ha cargado todavía. Si simplemente usamo los método Applet play, por ejemplo, la primera vez que el usuario hace algo para hacer que el applet ejecute un sonido particular, el dibujo y el manejo de eventos del applet quedarán congelados mientras se carga el sonido. En su lugar, el applet detecta que el sonido no se ha cargado todavía y responde apropiadamente. Este ejemplo se explica en más detalle en la página Threads en Applets: Ejemplos.
|
| Utilidades
Patrocinados |
Copyright © 1999-2007
Programación en castellano.
Todos los derechos reservados.
Formulario de Contacto -
Datos legales -
Publicidad
Hospedaje web y servidores dedicados linux por Ferca Network
red internet: musica mp3 | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | tienda virtual | gifs animados