หลังจากอ่านทฤษฎีมากมายเกี่ยวกับการแยกอินเทอร์เฟซและรหัสแล้วฉันสงสัยว่าคุณเข้าใจรูปแบบคำสั่ง/การกระทำได้อย่างไร? ฉันยังมีคำถามดังกล่าวที่นี่ Delphi Control หรือวิธีการเรียกเหตุการณ์เป็นวิธีการออกแบบของ Delphi Control หรือวิธีการเรียกเหตุการณ์ กล่าวอีกนัยหนึ่งไม่จำเป็นต้องดำเนินการตามโหมดคำสั่ง/การกระทำโดยเจตนา แต่ก็เพียงพอที่จะให้ความสนใจกับการเข้ารหัสทั่วไป
เท่าที่ฉันเข้าใจมันใช้กิจกรรม onclick ของ Tbutton
โดยทั่วไปถ้าเราต้องการกำหนดเหตุการณ์นี้เพียงดับเบิลคลิกที่การควบคุมแล้วเขียนโค้ดเช่น:
ขั้นตอน tform1.button1click (ผู้ส่ง: tobject);
เริ่ม
-
จบ;
บางคนอาจคิดว่าการมีเพศสัมพันธ์ระหว่างรหัสและอินเทอร์เฟซนั้นร้ายแรงกว่าเพราะฟังก์ชั่นนี้ผสมกับอินเทอร์เฟซจริง ๆ
แต่ฉันไม่คิดอย่างนั้นลองตัวอย่างต่อไปนี้:
หากคุณต้องการใช้ button2 อื่น (หรือ menuitem หรือเหตุการณ์คำสั่งอื่น) เพื่อใช้ฟังก์ชั่นนี้ฉันสามารถสร้างเหตุการณ์ onclick ของ button2 point ไปยัง button1click และเมื่อแก้ไขเพียงแค่รักษารหัส button1click?
หรือประการที่สองเมื่อฉันเริ่มต้น button2 (เพราะสามารถสร้าง button2 ได้แบบไดนามิก) เพียงทำ button2.onclick: = button1click ทำไมฉันต้องใช้การฝึกที่เรียกว่านี้?
มาพูดคุยเกี่ยวกับการควบคุมของอินเทอร์เฟซ ทั้งหมดเรียกพื้นที่ของ button1click หายไปและฉันสามารถทำได้:
หากผู้ส่งเป็น tcontrol แล้ว
tControl (ผู้ส่ง). visible: = false;
สิ่งนี้ไม่แตกต่างจากการโทรหาที่มองเห็นได้