Paso 11: El actionPerformed método
Este es el método que controla cualquier evento de acción (hacer clic en un botón o marcando/desmarcando de una casilla de verificación) desde la pantalla principal.
En primer lugar, el método obtiene el comando String asociado a cualquier evento de acción se pasa. Esta secuencia corresponde a la etiqueta del componente de la GUI de donde vino el comando. Por ejemplo, haga clic en el botón "Random" envía un evento de acción a actionPerformed y la cadena de comandos de acción de ese evento va a ser "Al azar". Utilizando la cadena pasada en, el programa de figuras cómo responder a la acción con un bloque de interruptores. Para aquellos de ustedes que no saben, un bloque switch es una alternativa a una línea de if/else bloques. Enviar "cmd" para el interruptor, y cada caso es un valor posible de "cmd" que debe corresponder a una respuesta del programa. Los siguientes son los diferentes casos y sus respuestas asociadas:
-"Al azar"--> usar un array de int de tamaño 2 para representar una sugerencia (índice 0 es el número de temporada e Índice 1 es el número de episodio). El método getRandom (que se describirá más adelante) devuelve una sugerencia aleatoria y el método de la pantalla imprime la sugerencia muy bien en el área de texto.
-"Reset"--> llamadas al método resetWatched, que restablece la matriz seguimiento, estableciendo esencialmente todos los episodios "no sugerido". Después de llamar a resetWatched, el programa muestra un mensaje diciendo que se ha actualizado la lista de vistos.
-"Claro"--> establece el texto de área de texto en una cadena vacía, borrar eficazmente todo el texto de que JTextArea.
-Si "cmd" es un número 1-10, significa que la orden vino de cambiar el estado comprobado / de una de las casillas de verificación de la temporada. Yo llame al método addSeason y pase el número de la estación apropiada, para que addSeason pueda determinar cómo cambiar la posición de la temporada en el array "preferredSeasons".
-Por defecto, configurar actionPerformed para responder a un comando no reconocido por el comando en el área de texto blanco de la impresión. Esto fue principalmente para propósitos de depuración y es probable que ocurra durante la ejecución normal del programa.