>> Spreker 1: Kom ons skryf 'n program met 'n grafiese gebruikerskoppelvlak asook
'n teks veld wat die gebruiker toelaat om Tik in sommige string en druk Enter, by
watter punt dat die snaar is aan my program.
Baie soos GetString in die CS50 Library werk, maar hierdie keer met 'n
grafiese gebruikerskoppelvlak.
Kom ons begin.
>> Ek het reeds 'n paar skeletale kode geskryf, so laat ons nou in 'n leë vul.
GTextField, noem dit veld.
Toeken dit die terugkeer waarde van newGTextField.
En spesifiseer dat ek wil sien 10 karakters van die gebruiker op
die skerm op 'n tyd.
>> Kom ons volgende oproep setActionCommand, verby in die veld, verby in sê,
quote unquote "insette." Met ander woorde, laat se assosieer met hierdie teks veld
unieke string "insette." net in geval my user het verskeie teks
velde, hierdie string sal uniek hierdie een te identifiseer.
>> Kom ons volgende oproep addToRegion, verby in venster, verby in die veld, verby
in kwotasie unquote "South," het 'n unieke identifikasie omskryf in die Stanford
Draagbare Biblioteek wat bepaal die suidelike of onderkant
streek van my user.
>> Kom ons volgende veroorsaak 'n oneindige lus.
En binnekant van die loop, laat luister vir twee gebeure.
Een, die gebruiker die sluiting van die venster.
Of twee, die gebruiker iets tik in die teks veld.
Kom ons verklaar 'n gActionEvent.
Noem dit geval.
Toeken dit die terugkeer waarde van waitForEvent.
Spesifiseer dat die tipe gebeurtenis wat ons wil wil luister vir 'n ACTION_EVENT,
waar ACTION_EVENT is 'n konstante verklaar in die Stanford Portable
Biblioteek wat bepaal dat die tipe van gebeurtenis.
>> Kom ons volgende tjek indien getEventType, verby in geval, is gelyk aan gelykes
WINDOW_CLOSED, nog 'n konstante verklaar in die Stanford Portable
Biblioteek wat daarop dui dat die venster gesluit het.
Dan laat ons eenvoudig breek uit van hierdie oneindige lus.
>> Anders, laat ons nou kyk of die gebruiker het iets getik in daardie
teks veld.
As string vergelyk, getActionCommand, verby in geval, komma kwotasie unquote
"Insette" gelyk aan 0.
Met ander woorde, indien die unieke identifikasie die teks veld waarin
die gebruiker getik iets is gelyk aan dié unieke identifikasie wat ek
gespesifiseerde vroeër, laat Doen die volgende.
>> Printf kwotasie unquote "% s is ingevoer." En laat ons plug-in vir daardie
% S die terugkeer waarde van kryTeks verby in die veld, waar kryTeks is 'n ander
funksie, soos omskryf in die Stanford Draagbare Biblioteek, wat kry die teks
van 'n veld.
>> Kom ons nou ook red, saamstel, en die uitvoering van hierdie program.
Maak teks.
. / Teks.
Daar is my gebruikerskoppelvlak, en daar is dat die teks veld aan die onderkant.
Kom ons tik iets soos h-e-l-l-o, Tik.
En daar, aan die onderkant van my konsole venster, inderdaad ons sien
dat "hallo" is ingevoer.