ตอนที่ 5 ไฟล์รวบรวม (หน้า 12)
ตัวอย่างต่อไปของเราคือโปรแกรมที่เขียนใน VCL (ไลบรารีส่วนประกอบภาพ) ใน IDE โปรแกรมนี้จะสร้างเฟรม windows และไฟล์ทรัพยากรโดยอัตโนมัติดังนั้นคุณจึงไม่สามารถรวบรวมจากไฟล์ต้นฉบับเดียว แต่เขาแสดงให้เห็นถึงคุณสมบัติที่สำคัญของภาษา Delphi นอกเหนือจากหลายยูนิตแล้วคลาสและวัตถุสามารถใช้งานได้
โปรแกรมนี้มีไฟล์โครงการและไฟล์หน่วยใหม่ 2 ไฟล์ ขั้นแรกไฟล์โครงการมีดังนี้: โปรแกรมทักทาย; ใช้แบบฟอร์ม, UNIT1, UNIT2; {$ r *.res} // คำสั่งนี้เชื่อมโยงไฟล์ทรัพยากรของโครงการ ไปยังอินสแตนซ์แอปพลิเคชันทั่วโลก // การโทรหาแอปพลิเคชันแอปพลิเคชันแอปพลิเคชันทั่วโลก. initialize; application.createform (tform1, form1); application.createform (tform2, form2); application.run; end.in หนึ่งโปรแกรมของเรามีชื่อว่าทักทาย เขาใช้ไฟล์ 3 หน่วย แบบฟอร์มเป็นส่วนหนึ่งของ VCL;
โปรแกรมนี้เรียกชุดของวัตถุที่เรียกว่าแอปพลิเคชันซึ่งเป็นอินสแตนซ์ของคลาส tapplication ที่กำหนดไว้ในหน่วยหน่วยฟอร์ม (แต่ละโครงการสร้างวัตถุแอปพลิเคชันโดยอัตโนมัติ) สองวิธีที่ชื่อ CreateForm Call จาก Tapplication การโทรครั้งแรก CreateForm เพื่อสร้าง Form1 เป็นอินสแตนซ์ของคลาส TFORM1 ที่กำหนดไว้ใน UNIT1 การโทรครั้งที่สอง createForm สร้าง form2 และกำหนดอินสแตนซ์ของคลาส TFROM2 ใน UNIT2 10UNIT1 ดูเหมือนว่า: UNIT1 จะเป็นเช่นนี้: UNIT UNIT1; InterfaceUses Sysutils, ประเภท, คลาส, กราฟิก, การควบคุม, รูปแบบ, กล่องโต้ตอบ; TypetForm1 = Class (TFORM) ปุ่ม 1: tbutton; procedure button1click (ผู้ส่ง: tobject); tform1; TFORM1 มีปุ่ม ButtonButton1 อินสแตนซ์ของคลาส TButton และกระบวนการที่ชื่อว่า Button1Click ซึ่งเรียกว่าเมื่อผู้ใช้คลิกปุ่ม 1 Button1Click ซ่อน Form1 เพื่อแสดง form2 (โดยการโทร Form2.ShowModal)
Form2 เป็นหน่วยที่กำหนดไว้ในหน่วย 2; TFORM2; TFORM2 มีปุ่ม (อินสแตนซ์ของ CancelButton, อินสแตนซ์ของ tbutton) และกล่องข้อความ (อินสแตนซ์ของ label1, อินสแตนซ์ของ tlabel) คุณไม่เห็นแบบฟอร์มนี้ในซอร์สโค้ดยกเว้น Label1 นั้นแสดงชื่ออ่าน Hello World!
TFORM2 ประกาศและกำหนดวิธีการ CANCELBUTTONCLICK ซึ่งเรียกว่าเมื่อผู้ใช้กด CANCELBUTTON ที่รันไทม์ กระบวนการนี้ (พร้อมกับ form1.button1click ในหน่วยที่ 1) เรียกว่าตัวจัดการเหตุการณ์ เพราะมันเป็นเหตุการณ์ที่ตอบสนองเมื่อโปรแกรมกำลังทำงาน มือจับเหตุการณ์เป็นกิจกรรมพิเศษที่กำหนดไว้ในไฟล์ฟอร์ม 1 และฟอร์ม 2 ไฟล์ เมื่อโปรแกรมทักทายเริ่มทำงาน Form1 จะปรากฏขึ้นและ Form2 จะถูกซ่อนไว้ (โดยค่าเริ่มต้นเฉพาะหน้าต่างแรกที่สร้างขึ้นในไฟล์โครงการสามารถมองเห็นได้เมื่อรันไทม์และเรียกว่าหน้าต่างหลักของโครงการ) เมื่อผู้ใช้กดปุ่มในรูปแบบ 1, Form2 แสดง Hello World! ฟังความร้อนสูง เมื่อผู้ใช้กดปุ่ม CancelButton หรือปุ่มปิดบนแถบชื่อเรื่อง Form2 จะถูกปิด