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.