แนวคิดของรูปแบบเป็นองค์ประกอบอินเทอร์เฟซ ห่อหุ้มฟังก์ชันการทำงานของ windows และสรุปแง่มุมต่าง ๆ ในการทำงานกับพวกมัน ได้รับการหยั่งรากอย่างแน่นหนาในด้านการเขียนโปรแกรมแอปพลิเคชัน แพลตฟอร์มและเฟรมเวิร์กต่างๆ มักจะเสนอการนำแนวคิดนี้ไปปฏิบัติด้วยตนเอง ดังนั้น ในการควบคุมแบบฟอร์ม เช่น หากต้องการปิดแบบฟอร์ม คุณต้องใช้วิธีการต่างๆ
จำเป็น
- - สภาพแวดล้อมการพัฒนาหรือโปรแกรมแก้ไขข้อความ
- - ความสามารถในการเปลี่ยนรหัสโปรแกรม
คำแนะนำ
ขั้นตอนที่ 1
รับหมายเลขอ้างอิงของหน้าต่าง วัตถุ การอ้างอิง หรือตัวชี้ไปยังวัตถุของแบบฟอร์มที่คุณต้องการปิด ตามกฎแล้ว อาจจำเป็นต้องใช้ตัวอธิบายเมื่อเขียนโปรแกรมภายใต้ Windows โดยไม่ต้องใช้เฟรมเวิร์ก (ใช้เฉพาะ API) ในกรณีอื่น การดำเนินการกับแบบฟอร์มมักจะดำเนินการผ่านออบเจกต์ที่เกี่ยวข้อง เนื่องจากแบบฟอร์มถูกเปิดก่อนหน้านี้ วัตถุที่เกี่ยวข้องจึงถูกสร้างขึ้นด้วย ใช้มัน. ในโค้ดของเมธอดของคลาสฟอร์ม การเข้าถึงเมธอดและคุณสมบัติของอ็อบเจ็กต์นั้นมักจะทำได้ผ่านตัวระบุเช่นนี้ (C ++, C #), self (Delphi), Me (Visual Basic) หรือง่ายๆ ตามชื่อ เนื่องจากสามารถเข้าถึงได้จากขอบเขตปัจจุบัน
ขั้นตอนที่ 2
ปิดแบบฟอร์มที่สร้างเป็นไดอะล็อกแบบไม่ใช้โมเดล โดยทราบหมายเลขอ้างอิง หากคุณต้องการให้โปรแกรมสามารถดำเนินการบางอย่างในการปิดและอาจป้องกันได้ ให้ส่งข้อความ WM_CLOSE ไปที่หน้าต่าง:
:: PostMessage (ชม, WM_CLOSE, 0, 0);
มิฉะนั้น ให้ทำลายมันโดยเรียก DestroyWindow:
:: DestroyWindow (ซ);
h คือที่จับที่หน้าต่าง
ขั้นตอนที่ 3
เมื่อต้องการปิดฟอร์มในโปรแกรมที่เรียกใช้ Microsoft. NET Framework ให้ใช้เมธอด Close ของออบเจ็กต์ (ซึ่งเป็นอ็อบเจ็กต์ของคลาส Form ในเนมสเปซ System. Windows. Forms) ตัวอย่างเช่น จากเมธอดของคลาสฟอร์ม การเรียกสามารถทำได้ดังนี้:
this.ปิด ();
จากนั้น หากแบบฟอร์มเป็นส่วนหนึ่งของแอปพลิเคชัน MDI หรือแสดงโดยการเรียก ShowDialog ให้เรียก Dispose เพื่อให้ตัวรวบรวมขยะสามารถเพิ่มหน่วยความจำได้
ขั้นตอนที่ 4
ใน Delphi ใช้วิธีปิดเพื่อปิดแบบฟอร์ม หรือสำหรับรูปแบบโมดอล คุณสามารถตั้งค่าคุณสมบัติ ModalResult เป็นค่าอื่นที่ไม่ใช่ศูนย์ ค่าคงที่ที่ใช้กันทั่วไป ได้แก่ mrOk, mrCancel เป็นต้น
ขั้นตอนที่ 5
แบบฟอร์มของแอปพลิเคชัน Microsoft office ในสคริปต์ VBA สามารถปิดได้โดยการเรียกเมธอด Hide ของออบเจ็กต์ ตัวอย่างเช่น จากตัวจัดการเหตุการณ์ของฟอร์มหรือตัวควบคุม คุณสามารถทำได้ดังนี้:
ฉันซ่อน