Stap 11: Het actionPerformed, methode
Dit is de methode die elke actie gebeurtenis (door te klikken op een knop of controleren/unchecking van een checkbox) verwerkt van het hoofdscherm.
Ten eerste, de methode haalt de opdracht van de tekenreeks die is gekoppeld aan welke actie gebeurtenis wordt doorgegeven. Deze tekenreeks komt overeen met het label van de component van de GUI waar de opdracht vandaan. Bijvoorbeeld, een actie-evenement te klikken op de knop "Random" stuurt naar actionPerformed, en de actie-opdrachtreeks van die gebeurtenis zullen "Random". Met de tekenreeks doorgegeven, cijfers het programma uit hoe te reageren op de actie met een switch blok. Voor degenen onder u die niet weet, een blok van de schakelaar is een alternatief voor een lijn van if/else blokken. Ik stuur ter "cmd" met de schakeloptie, en elk geval is een mogelijke waarde van "cmd" die moet overeenkomen met een reactie vanuit het programma. De volgende zijn de verschillende gevallen en hun bijbehorende antwoorden:
-"Random"--> ik gebruik een int-array van grootte 2 te vertegenwoordigen een suggestie (index 0 is het nummer van het seizoen, en index 1 is het nummer van de aflevering). De getRandom-methode (om te worden wordt later beschreven) geeft als resultaat een willekeurige suggestie, en wordt de methode display afgedrukt uit de suggestie mooi op het tekstgebied.
-"Reset"--> oproepen de resetWatched-methode, die Hiermee stelt u de gevolgde array, in wezen het instellen van alle afleveringen te "niet gesuggereerd". Na het aanroepen van resetWatched, geeft het programma een bericht zeggend dat de gevolgde lijst is bijgewerkt.
-"Clear"--> Sets de tekst gebied op een lege tekenreeks, effectief wissen alle tekst uit die JTextArea.
-Als "cmd" een nummer 1-10 is, betekent dat de opdracht vandaan gewijzigd van een van de selectievakjes seizoen gecontroleerd/uitgevinkt. Ik roep de methode addSeason en passeren het juiste seizoen nummer, zodat addSeason hoe bepalen kunnen te veranderen van dat seizoen de positie in de matrix "preferredSeasons".
-Als een standaard troep mij actionPerformed inspelen op een onbekende opdracht door de opdracht op het gebied van de witte tekst afdrukken. Dit was meestal voor foutopsporing en onwaarschijnlijk tijdens het regelmatig uitvoeren van het programma is.