1 00:00:00,000 --> 00:00:00,150 2 00:00:00,150 --> 00:00:03,120 >> ลำโพง 1: ลองเขียนโปรแกรมที่ มีส่วนติดต่อผู้ใช้แบบกราฟิกด้วย 3 00:00:03,120 --> 00:00:06,510 กล่องตรวจสอบและดูว่าเราไม่สามารถคิด วิธีการฟังสำหรับผู้ใช้ 4 00:00:06,510 --> 00:00:09,680 การสื่อสารกับกล่องกาเครื่องหมายที่ทำให้ ที่เราสามารถพิมพ์ไปยังหน้าจอ 5 00:00:09,680 --> 00:00:12,980 เมื่อใดก็ตามที่เราได้ยินการตรวจสอบผู้ใช้ หรือยกเลิกการเลือกช่องทำเครื่องหมายที่ 6 00:00:12,980 --> 00:00:15,810 >> ผมเคยตัวเองเริ่มต้นที่นี่ใน ล่วงหน้าที่มีรหัสโครงกระดูกบางส่วน 7 00:00:15,810 --> 00:00:17,610 ตอนนี้ขอไปและกรอกข้อมูลลงในที่ว่างเปล่า 8 00:00:17,610 --> 00:00:20,500 เป็นครั้งแรกหลังจากการจัดสรรหน้าต่างที่ฉัน จะไปข้างหน้าและจัดสรร 9 00:00:20,500 --> 00:00:24,400 GCheckBox เรียกมันว่าช่องทำเครื่องหมาย 10 00:00:24,400 --> 00:00:29,090 และฉันจะกำหนดให้มันกลับมา ค่าของ newGCheckBox และผม 11 00:00:29,090 --> 00:00:33,050 จะผ่านในสายของการพูดว่า "ผม ตกลง. "ในคำอื่น ๆ ที่ 12 00:00:33,050 --> 00:00:35,420 ฉลากที่จะเชื่อมโยง ที่มีช่องทำเครื่องหมายว่า 13 00:00:35,420 --> 00:00:39,750 >> ถัดไปให้ไปข้างหน้าและเรียก setActionCommand ผ่านใน 14 00:00:39,750 --> 00:00:43,990 ช่องทำเครื่องหมายและผ่านที่ไม่ซ้ำกันใน ระบุเช่น "การตรวจสอบ." ในอื่น ๆ 15 00:00:43,990 --> 00:00:47,320 คำที่ฉันต้องการที่จะเชื่อมโยงที่ไม่ซ้ำกัน คำค่อนข้างพล แต่ 16 00:00:47,320 --> 00:00:51,470 โดยเฉพาะในกรณีนี้ "ตรวจสอบ" ดังนั้น ว่าเมื่อช่องทำเครื่องหมายนี้จะถูกตรวจสอบผม 17 00:00:51,470 --> 00:00:55,520 ที่อาจเกิดขึ้นไม่ซ้ำกันสามารถระบุว่า ช่องทำเครื่องหมายถ้าอินเตอร์เฟซของฉันที่เกิดขึ้นกับ 18 00:00:55,520 --> 00:00:57,540 มีช่องทำเครื่องหมายหลาย 19 00:00:57,540 --> 00:01:02,820 >> สมมติต่อไปเพิ่มช่องทำเครื่องหมายเพื่อ อินเตอร์เฟซผู้ใช้ที่มี addToRegion, 20 00:01:02,820 --> 00:01:07,040 ผ่านในหน้าต่างผ่านในช่องทำเครื่องหมาย และผ่านในคำพูดที่นำมาอ้าง 21 00:01:07,040 --> 00:01:10,730 "SOUTH", "SOUTH" เป็นตัวระบุที่ไม่ซ้ำกัน ที่กำหนดไว้ในสแตนฟอ 22 00:01:10,730 --> 00:01:14,060 ห้องสมุดแบบพกพาที่เพียงหมายถึง ภาคใต้หรือด้านล่าง 23 00:01:14,060 --> 00:01:15,770 ภูมิภาคของอินเตอร์เฟซผู้ใช้ 24 00:01:15,770 --> 00:01:19,680 >> สมมติต่อไปจงใจก่อให้เกิด ห่วงอนันต์ 25 00:01:19,680 --> 00:01:22,660 ด้านในของวงนี้ตอนนี้ขอ ฟังสำหรับการกระทำที่สาม 26 00:01:22,660 --> 00:01:25,420 หนึ่งในผู้ใช้พยายามที่จะ ปิดหน้าต่าง 27 00:01:25,420 --> 00:01:27,090 สองผู้ใช้ตรวจสอบกล่อง 28 00:01:27,090 --> 00:01:29,690 และสามเลิกกาเครื่องหมายผู้ใช้ กล่อง 29 00:01:29,690 --> 00:01:34,020 >> Let 's แรกประกาศ GActionEvent, เรียกมันว่าเหตุการณ์ 30 00:01:34,020 --> 00:01:37,740 และกำหนดให้มันกลับมา ค่าของ waitForEvent 31 00:01:37,740 --> 00:01:42,850 ผ่านใน ACTION_EVENT ค่าคงที่ ประกาศในแบบพกพา Stanford 32 00:01:42,850 --> 00:01:45,970 ห้องสมุดที่แสดงให้เห็นว่าฉันต้องการ ชอบฟังสำหรับการกระทำ 33 00:01:45,970 --> 00:01:52,410 >> ลองตรวจสอบต่อไปถ้า getEventType, ผ่านในเหตุการณ์เท่ากับเท่ากับ 34 00:01:52,410 --> 00:01:56,970 WINDOW_CLOSED คงประกาศอีก ในแบบพกพาที่สแตนฟอ 35 00:01:56,970 --> 00:02:00,040 ห้องสมุดที่แสดงให้เห็นว่าจริง หน้าต่างถูกปิด 36 00:02:00,040 --> 00:02:04,000 จากนั้นให้แยกออกจากฉัน ห่วงอนันต์เป็นอย่างอื่น 37 00:02:04,000 --> 00:02:07,650 >> สุดท้ายขอฟังสำหรับผู้ใช้ การตรวจสอบกล่องหรือยกเลิกการเลือกช่อง 38 00:02:07,650 --> 00:02:08,630 ดังต่อไปนี้ 39 00:02:08,630 --> 00:02:15,010 ถ้าสตริงเปรียบเทียบของ getActionCommand, ผ่านในเหตุการณ์ 40 00:02:15,010 --> 00:02:19,250 จุลภาคอ้างนำมาอ้าง "ตรวจสอบ" เท่ากับเท่ากับ 0 41 00:02:19,250 --> 00:02:22,360 ในคำอื่น ๆ ถ้าตัวระบุที่ไม่ซ้ำกัน ที่เกี่ยวข้องกับ 42 00:02:22,360 --> 00:02:25,760 ช่องทำเครื่องหมายที่ได้รับการตรวจสอบเป็นคำพูด ได้นำมาอ้าง "กา" ที่ไม่ซ้ำกัน 43 00:02:25,760 --> 00:02:28,210 ระบุว่าฉันมา ก่อนหน้านี้แล้วให้ 44 00:02:28,210 --> 00:02:29,460 ดำเนินการดังต่อไปนี้ 45 00:02:29,460 --> 00:02:31,770 46 00:02:31,770 --> 00:02:40,570 >> หาก IsSelected ช่องทำเครื่องหมายแล้วฉันจะ เพื่อพิมพ์ตัวอย่างเช่นช่องทำเครื่องหมาย 47 00:02:40,570 --> 00:02:44,020 ถูกตรวจสอบ 48 00:02:44,020 --> 00:02:47,270 อื่นฉันจะคิดว่า ช่องทำเครื่องหมายเป็นไม่ถูกตรวจสอบและเพื่อให้ฉัน 49 00:02:47,270 --> 00:02:49,230 จะพิมพ์ออกมานี้แทน 50 00:02:49,230 --> 00:02:53,520 printf ช่องทำเครื่องหมายเป็นไม่ถูกตรวจสอบ 51 00:02:53,520 --> 00:02:56,670 ในคำอื่น ๆ IsSelected เป็นอีกหนึ่ง ฟังก์ชั่นที่กำหนดไว้ในสแตนฟอ 52 00:02:56,670 --> 00:02:59,070 ห้องสมุดแบบพกพาที่ไม่ ตรงที่ - ตรวจสอบว่า 53 00:02:59,070 --> 00:03:00,970 ช่องทำเครื่องหมายถูกเลือก 54 00:03:00,970 --> 00:03:03,670 >> ตอนนี้ขอบันทึกรวบรวม และเรียกใช้โปรแกรมนี้ 55 00:03:03,670 --> 00:03:05,285 ทำให้ช่องทำเครื่องหมาย 56 00:03:05,285 --> 00:03:07,610 . / ช่องทำเครื่องหมาย 57 00:03:07,610 --> 00:03:08,820 มีส่วนติดต่อผู้ใช้ของฉัน 58 00:03:08,820 --> 00:03:11,030 และแน่นอนมีช่องทำเครื่องหมายของฉัน 59 00:03:11,030 --> 00:03:15,680 ถ้าตอนนี้ฉันคลิกมัน "ช่องทำเครื่องหมายเป็น ตรวจสอบ. "และถ้าฉันคลิกมันอีกครั้ง 60 00:03:15,680 --> 00:03:17,690 "ช่องทำเครื่องหมายเป็นไม่ จำกัด ." 61 00:03:17,690 --> 00:03:19,488