ลำโพง 1: ลองเขียนโปรแกรมที่ มีส่วนติดต่อผู้ใช้แบบกราฟิกที่ รวมถึงการเลื่อนที่ผู้ใช้สามารถย้าย จากซ้ายไปขวาเพื่อที่จะเลือกบาง ค่าระหว่างสองจำนวนเต็ม ต้องการทำเช่นนั้นผมได้เริ่มต้นด้วย รหัสตัวยึดบางส่วน และตอนนี้ขอให้กรอกข้อมูลลงในที่ว่างเปล่า Let 's แรกจัดสรร GSlider เรียก มันเลื่อนและกำหนดให้กับมัน ค่าตอบแทนของ getGSlider และตอนนี้ขอให้ระบุที่ฉันต้องการ ลดผูกพันของแถบเลื่อนไปเป็น เลข 0, ขีด จำกัด ของ เลื่อนไปเป็นจำนวนเต็มจาก 100 และ ค่าเริ่มต้นเริ่มต้นที่จะเป็น 50 ถัดไปให้ไปข้างหน้าและเชื่อมโยง การดำเนินการกับคำสั่งนี้โดยการเลื่อน โทร setActionCommand ผ่านใน เลื่อนและผ่านไปโดยพลการใน แต่สายที่ไม่ซ้ำกันเช่นอ้างนำมาอ้าง "เลื่อน". ในคำอื่น ๆ "สไลด์" เป็น จะเป็นตัวระบุที่ไม่ซ้ำกัน ที่เกี่ยวข้องกับการเลื่อนนี้ ในกรณีที่ส่วนติดต่อผู้ใช้ของฉันมี เลื่อนหลายฉันสามารถเห็นความแตกต่าง ในหมู่พวกเขาด้วยเทคนิคนี้ ต่อไปขอเรียก addToRegion ผ่านใน หน้าต่างผ่านในการเลื่อนผ่าน ในคำพูดที่นำมาอ้าง "SOUTH" เพื่อที่จะ เพิ่มเลื่อนไปยังทางใต้ ภูมิภาคของอินเตอร์เฟซผู้ใช้ของเรา ที่ได้นำมาอ้างคำพูด "SOUTH" ที่เกิดขึ้นกับ เป็นตัวระบุเฉพาะที่กำหนดไว้ใน สแตนฟอห้องสมุดแบบพกพา แต่ตอนนี้เพื่อความชัดเจนไปทางซ้าย ของขอเลื่อนยาก รหัสหมายเลข 0 และทางด้านขวาของตัวเลื่อนให้ ยากรหัสหมายเลข 100 เพื่อให้ผู้ใช้รู้โดยการเลื่อน สิ่งที่ไปทางซ้ายหรือไปทางขวาวิธี พวกเขากำลังจะเปลี่ยนค่าของมัน ก่อนที่เราจะจัดสรรแถบเลื่อนที่ให้ ไปกลับมาที่นี่และจัดสรร gLabel, เรียกมันว่าซ้าย และกำหนดค่าตอบแทนของ newGLabel ผ่านในคำพูดที่นำมาอ้าง - ในคำอื่น ๆ - ของ "0." ตอนนี้ขอเรียก addToRegion, ผ่านในหน้าต่างผ่านในซ้าย ผ่านในคำพูดที่นำมาอ้าง "SOUTH." ดังนั้น ที่ป้ายนี้ถูกแทรกลงในที่ ภาคใต้ก่อนที่จะเลื่อน และตอนนี้หลังจากที่เลื่อนให้เป็นไป ข้างหน้าและประกาศ gLabel อื่น เรียกมันว่าถูกต้องกำหนด ค่าตอบแทนของ newGLabel อ้างนำมาอ้าง - สตริงอื่น - "100." แล้วโทร addToRegion, ผ่านในหน้าต่างผ่านในที่ถูกต้อง ผ่านใน "ใต้" ได้เป็นอย่างดี ในคำอื่น ๆ ที่เราได้ประกาศเพียง ป้ายเลื่อนและป้ายอื่นและ แทรกไว้ในภาคใต้ เพื่อให้เพื่อให้ผู้ใช้รู้ว่า เมื่อเขาหรือเธอย้ายไปทางขวา หรือไปทางซ้ายประมาณสิ่งที่มีค่า พวกเขาจะเดินเข้ามาใกล้ ตอนนี้ขอเหนี่ยวนำให้เกิดห่วงอนันต์ และภายในของวงนี้ ช่วยให้การตรวจสอบครั้งแรกสำหรับ GActionEvent เรียกมันว่าเหตุการณ์ กำหนดผลตอบแทน ค่าของ waitForEvent ผ่านในการกระทำเหตุการณ์คงที่ ประกาศในแบบพกพา Stanford ห้องสมุดที่บ่งบอกว่าคุณแน่นอน ต้องการที่จะรอการดำเนินการ ลองตรวจสอบต่อไปถ้า getEventType, ผ่านในเหตุการณ์เท่ากับ WINDOW_CLOSED คงประกาศอีก ในแบบพกพา Stanford ห้องสมุดที่แสดงให้เห็นว่าการดำเนินการ คือการปิดหน้าต่าง จากนั้นให้ไปข้างหน้าและแตกออก ของวงนี้เป็นอย่างอื่น อื่นให้ตรวจสอบว่าผู้ใช้ ได้เลื่อนแถบเลื่อนที่ ถ้าสตริงเปรียบเทียบของ getActionCommand, ผ่านในเหตุการณ์จุลภาคอ้างนำมาอ้าง "สไลด์" เท่ากับเท่ากับ 0 ในคำอื่น ๆ ถ้าตัวระบุที่ไม่ซ้ำกัน ที่เกี่ยวข้องกับการเลื่อน ที่ได้รับการเลื่อนเท่ากับอ้างนำมาอ้าง "สไลด์" ระบุที่ไม่ซ้ำกัน ที่เราให้ไว้ก่อนหน้านี้แล้ว ผมต้องการที่จะทำต่อไปนี้ printf "เลื่อนก็เลื่อนไปยัง% i เครื่องหมาย n "แสดงให้เห็นว่าฉันต้องการ เสียบในหนึ่ง ค่าของตัวเลื่อน ดังนั้น getValue จุลภาคของตัวเลื่อน ตอนนี้ขอบันทึกรวบรวมทำงานนี้ โปรแกรมและเลื่อนแถบเลื่อนที่ ให้เลื่อน . / เลื่อน มีส่วนติดต่อผู้ใช้ของฉัน มีการเลื่อนของฉันไปทางซ้ายที่ เป็น 0, ไปทางขวาซึ่งเป็น 100 ทั้งสองป้าย และเป็นฉันเลื่อนแถบเลื่อนไปทางซ้าย และขวาสังเกตว่าในของฉัน หน้าต่างคอนโซลฉันจะเห็น ค่าจำนวนเต็ม ตอนนี้ผมไม่จำเป็นต้องดูทั้งหมดของ ตัวเลขระหว่าง 0 และ 100 เนื่องจาก ทั้งนี้ขึ้นอยู่กับความเร็วที่ ฉันย้ายเลื่อนของฉัน โปรแกรมอาจจะไม่แจ้งให้ทราบล่วงหน้า แต่แน่นอนถ้าผมย้ายไปอยู่ที่ สถานที่เฉพาะที่เป็นค่า ที่จะพิมพ์