240 likes | 374 Views
Chapter 2 Object & Form. SUCHADA PUNNOI Dept. of Computer Science & Information Technology http :// computer . pcru . ac . th / KuBo/. Object.
E N D
Chapter 2Object & Form SUCHADA PUNNOI Dept. of Computer Science & Information Technology http://computer.pcru.ac.th/KuBo/
Object • อ็อบเจ็กต์ (objects)คือสิ่งใด ๆ ก็ตาม ซึ่งมีคุณสมบัติ (Properties) ที่บ่งบอกความเป็นตัวเองในขณะนั้น และสามารถแสดงพฤติกรรม (Method) ของตัวเองออกมาได้ เช่น คอนโทรลต่าง ๆ
Properties • คุณสมบัติ (properties)คือสิ่งที่สามารถบ่งบอกถึงความเป็นวัตถุ และอยู่ภายในตัววัตถุซึ่งสามารถเปลี่ยนแปลงได้เช่น รูปร่าง ลักษณะ ความกว้าง ความยาว ฯลฯ สำหรับในแต่ละคอนโทรล หรือออบเจ็กต์ อาจจะมีคุณสมบัติที่เหมือนกัน หรือต่างกันก็ได้ ขึ้นอยู่กับหน้าที่ของแต่ละคอนโทรล คอนโทรลหรือออบเจ็กต์หนึ่ง ๆ จะมีคุณสมบัติมากมาย หลายอย่าง ยิ่งสามารถปรับแต่งคุณสมบัติให้ตรงกับความต้องการมากเพียงใด โปรแกรมประยุกต์ก็จะมีประสิทธิภาพมากขึ้นเท่านั้น ซึ่งถือได้ว่าเป็นจุดเริ่มต้นได้ดี ในการพัฒนาโปรแกรมประยุกต์สามารถปรับแต่ง คุณสมบัติได้จากหน้าต่างProperties หรือปรับแต่งด้วยการเขียนโค้ดก็ได้จะมีคุณสมบัติบางตัว ที่ไมโครซอฟท์แนะนำให้ ปรับแต่งด้วยการเขียนโค้ด และบางตัวปรับแต่งด้วยการแก้ไขในหน้าต่าง Properties และในทางปฏิบัติไม่จำเป็นต้องปรับแต่งทุก ๆ คุณสมบัติ เพราะ Visual Basic ได้ตั้งค่าเริ่มต้น ไว้ให้แล้ว ซึ่งก็สามารถใช้งานได้ในระดับหนึ่ง
Method • เมธอด (methods)หมายถึง อาการที่วัตถุใด ๆ แสดงออกมาหรือถูกให้แสดงออกมาโดยพฤติกรรมใดๆ ของวัตถุนั้น จะมีผลเชื่อมโยงไปถึงข้อมูลคุณลักษณะภายในวัตถุเองด้วย อาจกล่าวได้ว่า เป็นการควบคุมการทำงานของคอนโทรล หรือออบเจ็กต์นั่นเอง จะใช้จุดเป็นตัวคั่นระหว่างชื่อคอนโทรลกับเมธอด ซึ่งจะเห็นได้ว่า คุณสมบัติและเมธอดมีคามใกล้เคียงกันมาก เนื่องจากจะใช้จุด . เป็นตัวแยกระหว่าง ชื่อคอนโทรลกับคุณสมบัติ หรือชื่อคอนโทรลกับเมธอด จะมีความแตกต่างกัน ในแง่ของการควบคุมคอนโทรล หรือออบเจ็กต์ ซึ่งจะได้ศึกษาในหัวข้อต่อ ๆ ไป
Form • ฟอร์ม (Form) คือ หน้าต่างที่ใช้สำหรับแสดงผล โดยจะมี ActiveX Controls ต่าง ๆ บรรจุอยู่ภานใน มีหน้าที่สำหรับติดต่อกับผู้ใช้งาน โดย Form ก็ถือว่าเป็นออบเจ็กต์ด้วย • ประเภทของฟอร์ม แบ่งออกได้เป็น 2 ประเภทคือ
SDI Form (Single Document Interface Form) • เป็นฟอร์มที่สามาระทำงานได้อย่างอิสระ สามารถที่จะวางเครื่องมือต่าง ๆ ได้
MDI Form (Multiple Document Interface Form) • เป็นฟอร์มที่ใช้บรรจุ SDI Form ไว้ โดย SDI Form ที่จะบรรจุอยู่ภายใต้ MDI Form จะต้องกำหนดคุณสมบัติของฟอร์มให้เป็น MDI child ก่อน สำหรับ MDI Form จะสามารถวางเครื่องมือได้เพียงบางอย่างเท่านั้น
ใน Project แต่ละ Project นั้นจะมี SDI Form ได้ไม่จำกัด แต่จะมี MDI Form ได้เพียงแค่ 1 ฟอร์มเท่านั้น และสำหรับ Project ใดก็ตามที่มีการเรียกใช้ MDI Form และได้กำหนดคุณสมบัติของ SDI Form ให้เป็น MDI Child เมื่อทำการปิด MDI Form แล้วนั้นจะมีผลทำให้ SDI Form ที่เป็น MDI Child ถูกปิดตามไปด้วย
การกำหนดค่า Properties • การกำหนดค่าพร็อพเพอร์ตี้ของ Form สามารถจะกำหนดได้ 2 วิธีด้วยกันคือ • 1. กำหนดจาก Properties Window • 2. กำหนดโดยการเขียนชุดคำสั่งใน Code Editor
การเพิ่ม Form หรือโมดูลอื่นๆ • การเพิ่ม Form หรือโมดูลอื่นๆ เข้ามาในสภาพแวดล้อม 1.ให้คุณเลือกเมนู Project จากนั้น ให้คุณเลือกชนิดของโมดูล ที่คุณต้องการเพิ่มเข้ามาในสภาพแวดล้อม และถ้าในกรณีที่คุณต้องการเพิ่ม Form เข้ามาในโปรเจ็กต์ คุณสามารถคลิ๊กที่ปุ่มบนทูลบาร์เลยก็ได้
ไอคอนต่างๆ บนหน้าต่าง Add Form • สำหรับไอคอนต่างๆ มีความหมายดังนี้
การเพิ่มตัว Control ลงบนฟอร์ม Visual Basic ใช้คำว่า วาดตัว control สำหรับการเพิ่มตัว control เช่นต้องการเพิ่ม Text box, Label และ Command button 1. คลิกที่ tool ของ Text box บน Toolbox 2. ย้ายเมาส์ หรือ พอยเตอร์ ไปที่ฟอร์ม เมาส์จะเปลี่ยนเป็นกากบาท 3. วางเมาส์ที่เป็นรูปกากบาทในตำแหน่งที่เป็นมุมซ้ายด้านบนของตัว control ลากกากบาท โดยกดเมาส์ปุ่มซ้ายค้างไว้ จนกระทั่งตัว control มีขนาดที่ต้องการ แล้วปล่อยปุ่มบนเมาส์
การตั้งค่าคุณสมบัติของตัว Control ตัว control แต่ละตัวสามารถกำหนดคุณลักษณะได้โดยการตั้งค่าคุณสมบัติเพื่อกำหนดพฤติกรรม และความสวยงาม เช่น Label ให้กำหนดคุณสมบัติ Caption สำหรับข้อความที่เหมาะสม คุณสมบัติ Font สำหรับลักษณะตัวอักษร คุณสมบัติ Name สำหรับการตั้งชื่อตัว control ที่สื่อความกับการใช้งาน ส่วน Text box คุณสมบัติ Text เป็นข้อความที่ ปรากฏภายในตัว control ซึ่งสามารถลบเป็นข้อความว่างได้
การตั้งค่าคุณสมบัติของตัว Control window ของตารางคุณสมบัติ ประกอบด้วย Object Box แสดงชื่อของอ๊อบเจคที่ผู้ใช้เลือก คลิกที่ลูกศรด้านขวาจะแสดงรายการอ๊อบเจคของฟอร์มปัจจุบัน ซึ่งสามารถเปลี่ยนอ๊อบเจคโดยการคลิกเลือกจาก Combo box Sort tabs เลือกลักษณะการแสดงรายการคุณสมบัติ โดย Alphabetic เป็นการแสดงรายการตามตัวอักษร หรือ Categorized เป็นแสดงแบบลำดับชั้นด้วยแบ่งเป็นกลุ่มทางตรรกะ รายการคุณสมบัติ (Properties list) คอลัมน์ทางซ้ายจะแสดงรายการคุณสมบัติของอ๊อบเจค และคอลัมน์ขวาเป็นค่าของคุณสมบัติ ซึ่งการตั้งค่าเป็นการแก้ไขค่าในคอลัมน์ขวา
การตั้งค่าคุณสมบัติของตัว Control
การ Run โปรเจ็กต์ การทดสอบ (run) โปรเจ็กต์ 1.ให้คุณเลือกเมนู Run/Start หรือกดปุ่ม F5 ที่คีย์บอร์ด หรือกดปุ่ม ที่ทูลบาร์ 2.ที่ฟอร์มจะมีการเปลี่ยนรูปแบบ ไม่มีเส้นกริด และจะปรากฎหน้าต่าง Immediate ด้านล่างของสภาพแวดล้อม3.ถ้าคุณมีการสั่งให้พิมพ์โดยผ่านทางคำสั่ง Debug.Print ที่หน้าต่าง Immediate จะแสดงผลจากการประมวลผลด้วย4.คุณจะสังเกตเห็นว่าที่บนทูลบาร์ จะมีปุ่มและ มีสถานะ Active อยู่ โดยมีความหมายดังนี้ • ปุ่ม หมายถึง ให้หยุดการรันโปรเจ็กต์ หมายถึง ให้หยุดรันโปรเจ็กต์ชั่วคราวเพื่อ แก้ไขโค้ด • ปุ่ม
การเขียนคำสั่ง คำสั่งของ Visual Basic แบ่งเป็นกลุ่มเรียกว่า procedure โดย event procedure มีคำสั่งที่ประมวลผลเมื่อเกิด event ขึ้น ซึ่ง event procedure จะเป็นชื่อของตัว control ตามด้วยเส้นใต้ (under score) และชื่อ event เช่น command 1_Click
วิธีสร้าง Event Procedure • 1. ใน Object List Box เลือกชื่อของอ๊อบเจคในฟอร์มตามตัวอย่าง เลือก Form • 2. ใน Procedure List Box เลือกชื่อของ event สำหรับ โดยปกติค่าเริ่ม procedure ของฟอร์ม คือ Load event และในตัวอย่างนี้ต้องการใช้ Load event เช่นกัน
วิธีสร้าง Event Procedure 3. พิมพ์คำสั่งระหว่างประโยคคำสั่ง Sub และ End Sub Private Sub Form_Load() ' ตั้งค่าเมื่อโหลดฟอร์มให้กับ label1 Label1.Caption = " Hello ! Jonior Programmer " Label1.Alignment = 2 Label1.FontBold = True Label1.FontSize = 18 ' ป้องกันการเข้าถึง text1 Text1.Locked = True End Sub
Comment • Comment ในภาษา VB จะใช้สัญลักษณ์ ‘ (Single quote ) การใส่ comment นั้นเพื่อจุดประสงค์เป็นการอธิบาย หรือขยายความ เพื่อให้เกิดความเข้าใจมากขึ้น ซึ่งตัว compiler จะไม่นำบรรทัดที่มีสัญลักษณ์ ‘ (Single quote ) ไป complier เปรียบเสมือนว่าไม่มีบรรทัดนั้นอยู่ใน code • เช่น Private Sub Command2_Click() ‘ clear ค่าใน text1,2,3 ให้เป็นค่าว่าง Comment Line Text1.Text = "" Text2.Text = "" Text3.Text = "" End Sub