1 00:00:00,000 --> 00:00:00,150 2 00:00:00,150 --> 00:00:03,120 >> SPEAKER 1: La oss skrive et program som har et grafisk brukergrensesnitt med en 3 00:00:03,120 --> 00:00:06,510 sjekk boksen, og se om vi ikke kan regne ut hvordan å lytte til brukeren 4 00:00:06,510 --> 00:00:09,680 interaksjoner med dette merket så at vi kan skrive ut på skjermen 5 00:00:09,680 --> 00:00:12,980 når vi hører brukeren sjekk eller fjern merket at boksen. 6 00:00:12,980 --> 00:00:15,810 >> Jeg har fått meg i gang her i avansere med noen skjelett kode. 7 00:00:15,810 --> 00:00:17,610 Nå la oss gå og fylle inn de tomme. 8 00:00:17,610 --> 00:00:20,500 Først, etter tildeling av vinduet, jeg er kommer til å gå videre og tildele en 9 00:00:20,500 --> 00:00:24,400 GCheckBox, kaller det sjekkheftet. 10 00:00:24,400 --> 00:00:29,090 Og jeg kommer til å tildele den avkastningen Verdien av newGCheckBox, og jeg er 11 00:00:29,090 --> 00:00:33,050 kommer til å passere i en streng på, si, "Jeg enig. "Med andre ord, det er det 12 00:00:33,050 --> 00:00:35,420 Etiketten som vil være forbundet med at boksen. 13 00:00:35,420 --> 00:00:39,750 >> Neste, la oss gå videre og kaller setActionCommand, passerer i 14 00:00:39,750 --> 00:00:43,990 boksen og bestått i en unik identifikator, som "sjekk." I andre 15 00:00:43,990 --> 00:00:47,320 ord, jeg vil knytte et unikt ord, noe tilfeldig, men 16 00:00:47,320 --> 00:00:51,470 spesielt i dette tilfellet "sjekk", så at når dette er merket, jeg 17 00:00:51,470 --> 00:00:55,520 kan potensielt unikt identifisere at boksen hvis min grensesnitt som skjedde med 18 00:00:55,520 --> 00:00:57,540 har flere avkrysningsbokser. 19 00:00:57,540 --> 00:01:02,820 >> La oss neste legge boksen til brukergrensesnitt med addToRegion, 20 00:01:02,820 --> 00:01:07,040 passerer i vinduet, passerer i avkrysningsboksen, og passerer i quote unquote 21 00:01:07,040 --> 00:01:10,730 "SOUTH," "Sør" å være unik identifikator definert i Stanford 22 00:01:10,730 --> 00:01:14,060 Portable Library som bare refererer til den sørlige regionen, eller bunnen 23 00:01:14,060 --> 00:01:15,770 region av et brukergrensesnitt. 24 00:01:15,770 --> 00:01:19,680 >> La oss neste bevisst indusere en uendelig løkke. 25 00:01:19,680 --> 00:01:22,660 Inne i denne sløyfen, la oss nå lytte etter tre handlinger. 26 00:01:22,660 --> 00:01:25,420 One, brukeren prøver å lukke vinduet. 27 00:01:25,420 --> 00:01:27,090 To, brukeren å krysse av boksen. 28 00:01:27,090 --> 00:01:29,690 Og tre, brukeren Unchecking boksen. 29 00:01:29,690 --> 00:01:34,020 >> La oss først erklære en GActionEvent, kaller det event. 30 00:01:34,020 --> 00:01:37,740 Og tilordne den avkastningen Verdien av waitForEvent. 31 00:01:37,740 --> 00:01:42,850 Passerer i ACTION_EVENT, en konstant erklærte i Stanford Portable 32 00:01:42,850 --> 00:01:45,970 Bibliotek som indikerer at jeg hadde liker å høre for en handling. 33 00:01:45,970 --> 00:01:52,410 >> La oss neste sjekk om, getEventType, passerer i hendelsen, tilsvarer likemenn 34 00:01:52,410 --> 00:01:56,970 WINDOW_CLOSED, en annen konstant erklærte i Stanford bærbar 35 00:01:56,970 --> 00:02:00,040 bibliotek som indikerer at faktisk vinduet er lukket. 36 00:02:00,040 --> 00:02:04,000 Så la oss bryte ut av min ellers uendelig loop. 37 00:02:04,000 --> 00:02:07,650 >> Til slutt, la oss lytte til brukeren krysse av i boksen eller fjerner avkrysningen 38 00:02:07,650 --> 00:02:08,630 som følger. 39 00:02:08,630 --> 00:02:15,010 Hvis string sammenligne av getActionCommand, passerer i hendelsen. 40 00:02:15,010 --> 00:02:19,250 Komma quote unquote "sjekk" lik lik 0. 41 00:02:19,250 --> 00:02:22,360 Med andre ord, dersom den unike identifikatoren tilknyttet 42 00:02:22,360 --> 00:02:25,760 avkrysnings som er blitt sjekket er, sitat unquote, "check", den unike 43 00:02:25,760 --> 00:02:28,210 identifikator som jeg leverte tidligere, så la oss 44 00:02:28,210 --> 00:02:29,460 fortsette å gjøre følgende. 45 00:02:29,460 --> 00:02:31,770 46 00:02:31,770 --> 00:02:40,570 >> Hvis isSelected Book og jeg kommer å skrive ut, for eksempel, boksen 47 00:02:40,570 --> 00:02:44,020 ble sjekket. 48 00:02:44,020 --> 00:02:47,270 Else Jeg kommer til å anta at avkrysnings var ukontrollert, og så er jeg 49 00:02:47,270 --> 00:02:49,230 kommer til å skrive ut dette i stedet. 50 00:02:49,230 --> 00:02:53,520 Avkrysnings printf var ukontrollert. 51 00:02:53,520 --> 00:02:56,670 Med andre ord, er isSelected annen funksjon definert i Stanford 52 00:02:56,670 --> 00:02:59,070 Portable Library som gjør akkurat det - sjekk om 53 00:02:59,070 --> 00:03:00,970 en er merket. 54 00:03:00,970 --> 00:03:03,670 >> La oss nå lagre, sammenstille, og kjøre dette programmet. 55 00:03:03,670 --> 00:03:05,285 Gjør sjekkheftet. 56 00:03:05,285 --> 00:03:07,610 . / Sjekkheftet. 57 00:03:07,610 --> 00:03:08,820 Det er min brukergrensesnitt. 58 00:03:08,820 --> 00:03:11,030 Og ja, det er avkrysnings min. 59 00:03:11,030 --> 00:03:15,680 Hvis jeg nå klikker på den, "boksen var sjekket. "Og hvis jeg klikker det igjen, 60 00:03:15,680 --> 00:03:17,690 "Boksen var ukontrollert." 61 00:03:17,690 --> 00:03:19,488