1 00:00:00,000 --> 00:00:00,150 2 00:00:00,150 --> 00:00:03,120 >> SPEAKER 1: Lad os skrive et program, har en grafisk brugergrænseflade med en 3 00:00:03,120 --> 00:00:06,510 afkrydsningsfeltet, og se, om vi ikke kan finde ud af at lytte til brugeren 4 00:00:06,510 --> 00:00:09,680 interaktioner, afkrydsningsfelt med så at vi kan udskrive til skærmen 5 00:00:09,680 --> 00:00:12,980 når vi hører brugeren kontrollere eller fjern markeringen, at afkrydsningsfeltet. 6 00:00:12,980 --> 00:00:15,810 >> Jeg har fået mig i gang her i forhånd med nogle skelet kode. 7 00:00:15,810 --> 00:00:17,610 Lad os nu gå og udfylde det. 8 00:00:17,610 --> 00:00:20,500 Først efter at fordeling af det vindue, jeg er kommer til at gå videre og tildele en 9 00:00:20,500 --> 00:00:24,400 GCheckBox, kalder det afkrydsningsfelt. 10 00:00:24,400 --> 00:00:29,090 Og jeg har tænkt mig at tildele det afkast værdien af ​​newGCheckBox, og jeg er 11 00:00:29,090 --> 00:00:33,050 kommer til at bestå i en streng, siger, "Jeg enige. "Med andre ord, det er den 12 00:00:33,050 --> 00:00:35,420 etiket, der vil være forbundet med denne afkrydsningsfelt. 13 00:00:35,420 --> 00:00:39,750 >> Næste, lad os gå videre og kalde setActionCommand, passerer i 14 00:00:39,750 --> 00:00:43,990 afkrydsningsfeltet og passerer i en unik identifikator, som "kontrol." I andre 15 00:00:43,990 --> 00:00:47,320 ord, jeg ønsker at knytte en entydig ord, noget vilkårligt, men 16 00:00:47,320 --> 00:00:51,470 specifikt i denne sag "check", så at når dette afkrydsningsfelt er markeret, jeg 17 00:00:51,470 --> 00:00:55,520 potentielt kan entydigt at identificere det afkrydsningsfelt, hvis min grænseflade sket med 18 00:00:55,520 --> 00:00:57,540 har flere afkrydsningsfelter. 19 00:00:57,540 --> 00:01:02,820 >> Lad os næste føje afkrydsningsfeltet til brugergrænseflade med addToRegion, 20 00:01:02,820 --> 00:01:07,040 passerer i vinduet, der passerer i afkrydsningsfeltet og passerer i citat citat slut 21 00:01:07,040 --> 00:01:10,730 "SOUTH", "Syd" er entydig identifikator defineret i Stanford 22 00:01:10,730 --> 00:01:14,060 Bærbar Bibliotek, der blot refererer til den sydlige region, eller bunden 23 00:01:14,060 --> 00:01:15,770 region af en brugergrænseflade. 24 00:01:15,770 --> 00:01:19,680 >> Lad os næste bevidst inducere en uendelig løkke. 25 00:01:19,680 --> 00:01:22,660 Inde i denne løkke, så lad os nu lyt efter tre aktioner. 26 00:01:22,660 --> 00:01:25,420 En brugeren forsøger at lukke vinduet. 27 00:01:25,420 --> 00:01:27,090 To brugeren markere feltet. 28 00:01:27,090 --> 00:01:29,690 Og tre brugeren fjerne markeringen feltet. 29 00:01:29,690 --> 00:01:34,020 >> Lad os først erklære en GActionEvent, kalde det arrangement. 30 00:01:34,020 --> 00:01:37,740 Og tildele det afkast værdi waitForEvent. 31 00:01:37,740 --> 00:01:42,850 Passing i ACTION_EVENT en konstant anmeldt i Stanford Portable 32 00:01:42,850 --> 00:01:45,970 Bibliotek, der tyder på, at jeg havde kan lide at lytte til en handling. 33 00:01:45,970 --> 00:01:52,410 >> Lad os næste kontrol, hvis getEventType, passerer i tilfælde lig med ligemænd 34 00:01:52,410 --> 00:01:56,970 WINDOW_CLOSED anden konstant erklæret i Stanford bærbare 35 00:01:56,970 --> 00:02:00,040 bibliotek, der viser, at faktisk vinduet er lukket. 36 00:02:00,040 --> 00:02:04,000 Så lad os bryde ud af min ellers uendelig løkke. 37 00:02:04,000 --> 00:02:07,650 >> Endelig, lad os lytte til brugeren markere feltet eller fjerne markeringen i afkrydsningsfeltet 38 00:02:07,650 --> 00:02:08,630 som følger. 39 00:02:08,630 --> 00:02:15,010 Hvis streng sammenligne af getActionCommand, passerer begivenhed. 40 00:02:15,010 --> 00:02:19,250 Komma citat citat slut "check" lig lig 0. 41 00:02:19,250 --> 00:02:22,360 Med andre ord, hvis den entydige identifikator forbundet med 42 00:02:22,360 --> 00:02:25,760 afkrydsningsfelt, der er blevet kontrolleret, er, citat citat slut, "kontrol", den unikke 43 00:02:25,760 --> 00:02:28,210 identifikator, jeg leverede tidligere, så lad os 44 00:02:28,210 --> 00:02:29,460 videre til gøre følgende. 45 00:02:29,460 --> 00:02:31,770 46 00:02:31,770 --> 00:02:40,570 >> Hvis isSelected afkrydsningsfelt, så jeg har tænkt mig at udskrive f.eks afkrydsningsfelt 47 00:02:40,570 --> 00:02:44,020 blev kontrolleret. 48 00:02:44,020 --> 00:02:47,270 Else Jeg har tænkt mig at antage, at afkrydsningsfeltet var umarkeret, og så er jeg 49 00:02:47,270 --> 00:02:49,230 kommer til at udskrive denne i stedet. 50 00:02:49,230 --> 00:02:53,520 Printf afkrydsningsfeltet var ukontrolleret. 51 00:02:53,520 --> 00:02:56,670 Med andre ord isSelected er en anden funktion defineret i Stanford 52 00:02:56,670 --> 00:02:59,070 Portable Library, der gør præcis det - kontrollere, om 53 00:02:59,070 --> 00:03:00,970 et afkrydsningsfelt er markeret. 54 00:03:00,970 --> 00:03:03,670 >> Lad os nu gemme, kompilere, og køre dette program. 55 00:03:03,670 --> 00:03:05,285 Foretag afkrydsningsfelt. 56 00:03:05,285 --> 00:03:07,610 . / Afkrydsningsfelt. 57 00:03:07,610 --> 00:03:08,820 Der er min brugergrænseflade. 58 00:03:08,820 --> 00:03:11,030 Og ja, der er min afkrydsningsfeltet. 59 00:03:11,030 --> 00:03:15,680 Hvis jeg nu klikker på det, "afkrydsningsfeltet var kontrolleres. "Og hvis jeg klikker på det igen, 60 00:03:15,680 --> 00:03:17,690 "Afkrydsningsfeltet var markeret." 61 00:03:17,690 --> 00:03:19,488