LUIDSPREKER 1: Laten we een programma schrijven dat een grafische gebruikersinterface met een selectievakje, en kijken of we niet kunnen achterhalen hoe voor de gebruiker om te luisteren interacties met dat vakje zo dat we kunnen printen naar het scherm wanneer we horen de gebruiker controle of schakel die in. Ik heb gekregen mezelf begon hier in vooraf met een aantal skelet code. Nu laten we gaan en vul de lege. Eerst, na toewijzing van dat raam, ik ben gaan om verder te gaan en toe te wijzen een GCheckBox, noemde het selectievakje. En ik ga aan het toewijzen van de terugkeer waarde van newGCheckBox, en ik ben gaan passeren in een reeks van, zeg: "Ik eens. "Met andere woorden, dat de label die wordt gekoppeld met dat vakje. Vervolgens laten we verder gaan en bel setActionCommand, passeren in de checkbox en overgaan in een unieke identifier, zoals "check." Anders woorden, ik wil een unieke associëren woord, enigszins arbitrair, maar specifiek in dit geval "te controleren," zo dat wanneer dit vakje is aangevinkt, ik kan potentieel uniek identificeren dat selectievakje als mijn-interface is er gebeurd met hebben meerdere vakjes. Laten we het volgende toe te voegen op het selectievakje om de gebruikersinterface met addToRegion, passeren in het venster, passeren in checkbox, en passeren in citaat unquote "ZUIDEN," "Zuid" zijn unieke identificatie gedefinieerd in de Stanford Draagbare Bibliotheek die verwijst naar de zuidelijke regio, of de bodem regio van een gebruikersinterface. Laten we het volgende opzettelijk veroorzaken een oneindige lus. Binnenkant van deze lus, laten we nu luister naar drie acties. Een, de gebruiker probeert sluit het venster. Twee, de gebruiker het vakje. En drie, de gebruiker unchecking de doos. Laten we eerst verklaren een GActionEvent, noemde het evenement. En ken de terugkeer waarde van waitForEvent. Passeren in ACTION_EVENT, een constante in de Stanford Portable verklaard Bibliotheek die aangeeft dat ik zou graag voor een actie om te luisteren. Laten we volgende controle indien, getEventType, passeren in geval gelijk gelijken WINDOW_CLOSED, een andere constante verklaard in de Stanford draagbare library die aangeeft dat inderdaad het raam is gesloten. Dan laten we breken uit mijn anders oneindige lus. Tot slot, laten we luisteren naar de gebruiker het vakje in of uit de doos als volgt. Als string vergelijker van getActionCommand, passeren in geval. Comma citaat unquote "check" gelijk gelijk is aan 0. Met andere woorden, als de unieke identificator verbonden met de checkbox die is gecontroleerd is, citaat unquote, "check", de unieke id die ik geleverd eerder, dan laten we overgaan tot het volgende doen. Als isSelected checkbox, dan ga ik te printen, bijvoorbeeld, checkbox werd gecontroleerd. Anders ik ga ervan uit dat de checkbox was uitgeschakeld, en dus ik ben gaat in plaats daarvan uit te printen dit. Checkbox printf was uitgeschakeld. Met andere woorden, is een isSelected functie die in het Stanford Draagbare Bibliotheek dat doet precies dat - controleer of een selectievakje is geselecteerd. Laten we nu nog redden, compileren, en uitvoeren van deze programma. Maken checkbox. . / Checkbox. Daar is mijn gebruikersinterface. En inderdaad, daar is mijn checkbox. Als ik klik op het nu, "checkbox was gecontroleerd. "En als ik nogmaals op het, "Checkbox is aangevinkt."