วันอาทิตย์ที่ 16 ตุลาคม พ.ศ. 2559

Exam2 - 30september

Quiz 2


ข้อ 1 : เปลี่ยน on_children >> on_30september

สร้าง method set_value กับ get_value ( คิดมากเกินไป จริงๆแล้วไม่จำเป็น )


ทำการเรียกใช้ on_30september

แก้ไขโค้ดให้สั้นลง(??)




ข้อ 2 : ลบตัวที่ถูกเลือกทั้งหมดขณะ Group

สิ่งที่ทำในห้องเรียน
    ใน method remove (ไฟล์ generaloptions.py) จะทำการสร้างเงื่อนไขเช็คว่าอยู่ใน group mode หรือไม่ หากอยู่ใน group mode ก็จะทำการวนลูป แล้วเช็คอีกทีว่ามีการเลือก children ตัวนั้นไหม เพื่อที่จะลบเฉพาะตัวที่ถูกเลือกเท่านั้น

ปัญหาที่พบ
    เมื่อทำการลบ ค่าตำแหน่ง(index)ของ children จะมีการขยับเลื่อนลงมา เช่น หากลบตัวที่ 0 ทิ้ง children ตัวที่ 1 จะขยับลงมาเปลี่ยนเป็นตัวที่ 0 แทน ( เปลี่ยนแค่ค่า index นะ รูปร่างกับตำแหน่ง(position)ไม่เปลี่ยน )


สิ่งที่ทำในห้องนอน
    จากปัญหาที่เจอ จึงทำการแก้โดยให้มีการวนลูปจากตัวสุดท้ายจนถึงตัวที่ 0 แทน




ข้อ 3 : นับจำนวน StickMan

สิ่งที่ทำในห้องเรียน
    เพิ่ม Label เพื่อใช้แสดงจำนวน StickMan  เพิ่มตัวแปรต่างๆที่คิดว่าต้องใช้ สร้าง method count_stickman เพื่อใช้ในการนับจำนวน StickMan และทำการเรียกใช้ตอนสร้าง StickMan

ปัญหาที่พบ
    หาวิธีที่จะเช็คว่า chirdren ตัวนั้นๆเป็น StickMan เพื่อจะนำไปใช้ในตอน remove ไม่ได้


สอบถามมิตรสหาย
    มิตรสหายแนะนำว่า ลองสร้างไอดีให้ stickman ดูสิ ( ตอนแรกนึกถึง id ในไฟล์ .kv )


กลับมาแแก้ไขในห้องนอน
    หลังจากสร้าง id ให้ StickMan แล้วจึงทำการแก้ไขใหม่ โดยจะมีการวนลูป children ทั้งหมดเพื่อเช็คด้วยเงื่อนไขว่า มีไอดีตรงกับ StickMan หรือไม่ เมื่อวนลูปจนครบก็จะได้จำนวน StickMan ทั้งหมดออกมา ( มีแก้ไข on_30september ซึ่งก็ยังดูเยอะไปอยู่ดี )



ทำการเรียกใช้ count_stickman



End.



ไม่มีความคิดเห็น:

แสดงความคิดเห็น