วันอาทิตย์ที่ 2 ธันวาคม พ.ศ. 2550

เริ่มต้นเขียนโปรแกรมแรก ด้วย Delphi

ในการเขียนโปรแกรมด้วย Delphi นั้น เป็นการเขียนโปรแกรมแบบที่เรียกกว่า Event Driven หรือแปลเป็นไทยง่ายๆ ว่า การเขียนโปรแกรมแบบควบคุมเหตุการณ์

อย่างเช่น กดปุ่มแล้วเครื่องระเบิด ^-^

เมื่อรัน Delphi หน้าตาโปรแกรมก็จะประมาณนี้
การเขียนโปรแกรมด้วย Delphi - Delphi Skin

ในการเขียนโปรแกรมแรกนั้น ผมจะให้ทุกท่านได้เข้าใจ การเขียนโปรแกรมแบบ Event Driven อย่างชัดเจน และเห็นภาพรวมๆของการเขียนโปรแกรม

ในการเขียนโปรแกรมด้วย Delphi นั้น เราจะออกแบบโปรแกรมลงบนต่างต่าง Form Designer
การเขียนโปรแกรมด้วย Delphi - Form Designer

โดยนำสิ่งที่เป็นองค์ประกอบของโปรแกรม ที่เรียกว่า Component มาวางไว้บนForm
ซึ่ง Component เหล่านี้ จะอยู่รวมกันข้างบนตรงที่เรียกว่า Component Palette
การเขียนโปรแกรมด้วย Delphi - Component Palette

ในโปรแกรมที่เรากำลังจะเขียนนี้ เราจะใช้ Component 3 ตัว คือ
การเขียนโปรแกรมด้วย Delphi - Label Label ป้ายข้อความ
การเขียนโปรแกรมด้วย Delphi - Edit Edit กล่องข้อความ
การเขียนโปรแกรมด้วย Delphi - Button Button ปุ่ม

เมื่องนำมาวางเรียบร้อยแล้ว component ที่อยู่บน Form จะเรียกว่า Object

ต่อไปก็จัดตำแหน่ง Object ให้อยู่ตามที่เราต้อง
การเขียนโปรแกรมด้วย Delphi - Form เมื่อจัดวาง Component

เมื่อจัดการกับรูปแบบ จนได้ตามเราต้องการแล้ว เราก็จะมาจัดการกับรายละเอียดใน Object แต่ละตัวที่อยู่บน Form โดยรายละเอียดทั้งหมดของ Object แต่ละตัวจะปรากฎให้เราแก้ไขได้ผ่านทาง Object Inspector ซึ่งรายละเอียดเหล่านี้เราเรียกว่า Properties

การเขียนโปรแกรมด้วย Delphi - Object Inspector
*หลายๆครั้ง จะมีบางท่านเผลอปิดหน้าต่างนี้ไป ท่านสามารถ เรียกขึ้นมาใหม่ได้โดยไปที่เมนู View> Object Inspector

ผมจะแนะนำให้ท่านรู้จักกับ Properties ที่เกี่ยวข้องกับ โปรแกรมนี้

การเขียนโปรแกรมด้วย Delphi - Label Label ป้ายข้อความ
caption คือ ข้อความที่ปรากฎอยู่บนLabel

การเขียนโปรแกรมด้วย Delphi - Edit Edit กล่องข้อความ
text คือ ข้อความที่อยู่บนกล่องข้อความ

การเขียนโปรแกรมด้วย Delphi - Button Button ปุ่ม
caption คือ ข้อความที่ปรากฎอยู่บนButton

อ่อ! เดี๋ยวจะลืมกันนะครับ Form ก็มี Properties นะครับ
Form
Caption คือ ข้อความที่แสดงอยู่ตรง Title Bar ข้างบน Form

ในโปรแกรมนี้ผมจะเปลี่ยน Properties ดังนี้
Form Caption เปลี่ยนเป็น "พ่อผมใหญ่ ใครอย่ายุ่ง"
Label Caption เปลี่ยนเป็น "ชื่อพ่อผม"
Edit Caption เปลี่ยนเป็น "กรุณาใส่ชื่อพ่อของท่าน"
Button Caption เปลี่ยนเป็น "คลิกเพื่อเชิดชูพ่อ"

เมื่อเราปรับเปลี่ยนเรียบร้อย ก็จะเป็นเช่นนี้
การเขียนโปรแกรมด้วย Delphi - Form เมื่อ ปรับเปลี่ยน Properties

เสร็จแล้ว โปรแกรมของเราถูกออกแบบเรียบร้อยแล้วครับพี่น้องประชาชน

ต่อจากตรงนี้ไปเนี้ยแหละครับ ที่จะเขียนได้ว่า เขียนโปรแกรมจริงๆ ซึ่งเราเรียกขั้นนี้ว่า Coding

การเขียนโปรแกรมตรงนี้ เราจะเขียน Code ลงในหน้าต่างที่เรียกว่า Code editor
การเขียนโปรแกรมด้วย Delphi -  Code editor

แต่เราไม่ได้ ดุ่ยๆลุยไปเขียน Code เลยนะครับ เราจะต้องไปเลือก อีก Event ก่อนว่า
เราจะให้ Code ที่เราจะเขียนโปรแกรมนี้ ทำงานตอนไหน เช่น ให้ทำงานตอนกดปุ่ม

ซึ่งเราจะเลือก Event จาก Object Inspector ใน Tab ที่เขียนว่า Events
การเขียนโปรแกรมด้วย Delphi - Object Inspector ใน Tab Events

โดยในโปรแกรมนี้ เราจะมาเขียนโปรแกรมที่จะทำงานตอนคลิกปุ่ม
เพราะฉะนั้น ก็ต้องเขียนโปรแกรมที่ Event OnClick

วิธีเลือกก็ง่ายๆ ด้วยการดับเบิ้ลคลิกที่ ช่องว่างข้างๆช่องที่เป็นชื่อของ Event
สำหรับโปรแกรมนี้คือ OnClick

เมื่อดับเบิ้ลคลิกแล้ว จะแสดงหน้า Code editor ขึ้นมา พร้อมกับ สร้าง Code ส่วนหนึ่งขึ้นมา
การเขียนโปรแกรมด้วย Delphi - Code Editor เมื่อเลือก Event
สังเกตส่วนหัวของ Code จะเหมือนกับตรง Event

ในส่วนตรงนี้แหละครับ ที่เราจะเริ่มเขียนโปรแกรมกัน
โปรแกรมส่วนที่เราต้องการให้ทำงาน เมื่อคลิกปุ่มนั้น เราจะเขียนลงตรงระหว่าง Begin ถึง End;

โปรแกรมนี้ เราจะเขียนโปรแกรมให้เมื่อกดปุ่ม แล้ว Label แสดงประโยคว่า
"พ่อผมชือ(ชื่อของคุณพ่อ) ผมรักพ่อมากครับ "
โดยรับชื่อพ่อมาจาก กล่องข้อความ

เช่น พิมพ์ชื่อพ่อลงไปว่า "สมยศ" เมื่อกดปุ่ม โปรแกรมก็จะแสดงประโยคว่า
"พ่อผมชื่อสมยศ ผมรักพ่อมากครับ"

มาเขียน Code กันเลย

Code มีอยู่ว่า
Label1.cation := 'พ่อผมชือ'+ Edit1.text +' ผมรักพ่อมากครับ';

การเขียนโปรแกรมด้วย Delphi - Code Editor ขณะเขียน Code

ขณะเขียนโปรแกรมอยู่ ท่านอาจตกใจ อ้าว! พิมพ์ภาษาไทย กลายเป็นต่างดาวได้ไง
ไม่ต้องตกใจครับ พิมพ์ไปแล้วอาจจะเป็นภาษาต่างดาว แต่เวลาแสดงผลบนโปรแกรมเป็นภาษาไทยครับ

ผมเองก็ไม่มีวิธีแก้เหมือนกัน ทำยังไงมันก็เป็นภาษาต่างดาวครับ

เอาล่ะมา อธิบาย Code นิดนึง

ในการเขียนโปรแกรมเราเรียกชื่อของ Object
จาก Properties Name ซึ่งเป็นชื่อซึ่งใช้อ้างอิงในการควบคุม

จาก
Label1.cation := 'พ่อผมชือ'+ Edit1.text +' ผมรักพ่อมากครับ';

หมายความว่า ให้ค่า caption ของ Label1 แสดงประโยค "พ่อผมชื่อ+ข้อความในค่า text ของ Edit1+ ผมรักพ่อมากครับ"

เมื่อเขียนโปรแกรมเสร็จแล้ว เราก็ต้อง Run โปรแกรมกันหน่อย

โดยคลิกที่ปุ่ม สามเหลี่ยมเขียว ด้านบน เพื่อนรันโปรแกรม
การเขียนโปรแกรมด้วย Delphi - ปุ่ม Run

เมื่อรันแล้วหน้าตาจะเป็นอย่างงี้
การเขียนโปรแกรมด้วย Delphi - Form เมื่อ Run

ลองใส่ชื่อลงไป แล้วคลิกปุ่มดู
การเขียนโปรแกรมด้วย Delphi - Form เมื่อ Run

โอ้ !!! เย้ !!! โปรแกรมของฉัน มันทำงานได้แล้ว

เห็นไหมครับการเขียนโปรแกรมง่ายแค่ไหน

เขียนเสร็จแล้วอย่าลืมเก็บเอาดูนะครับ
การ Save โปรแกรม ให้กด Save All นะครับ

เพราะว่า โปรแกรมที่เขียนขึ้นมาไม่ได้มี ไฟล์แค่อันเดียว
การเขียนโปรแกรมด้วย Delphi - Files ของ Project

เนี้ยแหละครับ Files ทั้งหมด

ถ้าคุณกด Save เฉยๆ มันจะ Save เฉพาะ File ที่กำลังทำงาน ซึ่งอาจจะเป็น Form หรือ Code อันใดอันหนึ่งเท่านั้น

ส่วน File นามสกุล .exe นั้น เกิดจากการรัน โปรแกรมเมื่อกี้นะครับ

ถ้าท่านอยากดู Code ตัวอย่างจากผม ก็สามารถ Download ได้ ขนาดไฟล์ 204 kB