15
Paijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ (Visual Programming) ซึ่งหมายถึง การพัฒนาโดยเห็นผลทีเกิดขึ้นเมื่อรันโปรแกรมได้ตั้งแต่ในขณะที่กาลังสร้าง (What you see is what you get : WYSIWYG) ชิ้นส่วนประกอบต่าง ๆ เรียกว่า วัตถุ (Object) อาทิ ปุ่ม (Button), ป้ายข้อความ (Label), รูปภาพ (Image) เป็นต้น แหล่งรวมวัตถุเหล่านั้นว่า องค์ประกอบ (Component) พื้นที่ที่ต้องการนาเสนอบนวินโดว์ เรียกว่า ฟอร์ม (Form สามารถปรับแต่งขนาด สี รายละเอียดของวัตถุได้ในคุณสมบัติของวัตถุ (Property) และพฤติกรรมของวัตถุ (Method) การโปรแกรมเชิงวัตถุ (Object Oriented Programming : OOP)

Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

  • Upload
    others

  • View
    27

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

Borland Delphi

โปรแกรมภาษาภาพ (Visual Programming) ซึ่งหมายถึง การพัฒนาโดยเห็นผลที่เกิดขึ้นเมื่อรันโปรแกรมได้ตั้งแต่ในขณะที่ก าลังสร้าง (What you see is what you get : WYSIWYG) ชิ้นส่วนประกอบต่าง ๆ เรียกว่า วัตถุ (Object) อาทิ ปุ่ม (Button), ป้ายข้อความ

(Label), รูปภาพ (Image) เป็นต้น แหล่งรวมวัตถุเหล่านั้นว่า องค์ประกอบ (Component) พื้นทีท่ี่ต้องการน าเสนอบนวินโดว์ เรียกว่า ฟอร์ม (Form สามารถปรับแต่งขนาด สี รายละเอียดของวัตถุ ได้ในคุณสมบัติของวัตถุ

(Property) และพฤติกรรมของวัตถุ (Method) การโปรแกรมเชิงวัตถุ (Object Oriented Programming : OOP)

Page 2: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

P.2/2

Delphi Programming

สภาพแวดล้อมของโปรแกรม

Page 3: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

สภาพแวดล้อมของโปรแกรม ส่วนที่ 1 Main Window ท าหน้าที่เป็นตัวกลางส าหรับควบคุมกระบวนการ

ในการพัฒนาโปรแกรม เมนุงานจัดการเกี่ยวกับไฟล์ภายในแอพพลิเคชัน การคอมไพล์ การตรวจสอบข้อผิดพลาด โดยภายในวินโดว์หลักจะแบ่งเป็น 4 ส่วน คือ ไตเติลบาร์ เมนูบาร์ สปีด-บาร์ และ ทูลบาร ์

Page 4: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

Page 5: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

สภาพแวดล้อมของโปรแกรม ส่วนที่ 2 Object Inspector Window วินโดว์ซึ่งอยู่ใต้วินโดว์หลัก มักอยู่ด้านซ้าย

ใช้ส าหรับแสดงและปรับแต่งค่าคุณสมบัติ (Property) และก าหนดพฤติกรรม/เหตุการณ์ (event) ของคอมโพเนนท ์

คุณสมบัติ ( Properties ) ใช้ก าหนดคุณสมบัติของคอมโพเนนท์ แบ่งเป็น 2 คอลัมน์ คอลัมน์ซ้ายแสดงชื่อของคุณสมบัติ เช่น Font, color, caption เป็นต้น คอลัมน์ขวาแสดงค่าของคุณสมบัตินั้นที่สามารถแก้ไขปรับปรุงได้ เหตุการณ์ ( Events ) ใช้ก าหนดการท างานเมื่อเกิดเหตุการณ์หรือกระท ากับคอมโพเนนท์หนึ่ง หรือผู้ใช้ก าหนดตัวโปรแกรมเอง เช่น การใช้เมาส์คลิก การกดคีย์ Enter การแก้ไขเปลี่ยนแปลงค่า การเคลื่อนที่ของเมาส์ เป็นต้น

Page 6: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

สภาพแวดล้อมของโปรแกรม ส่วนที่ 3 วินโดว์ฟอร์ม (Form Window) ใช้ส าหรับออกแบบส่วนที่ติดต่อกับผู้ใช้

(Users Interface) โดยการน าวัตถุ/คอมโพเนนท์ต่าง ๆ จาก Toolbar มาวางลงบนฟอร์มและปรับแต่งคุณสมบัติคอมโพเนนท์ เมื่อ Run ผลที่ได้รับทางจอภาพจะมีลักษณะเดียวกัน ซึ่งเราสามารถสร้าง Form มากกว่า 1 ฟอร์ม ดังนั้นเราจึงต้องก าหนดให้เริ่มต้นแสดงที่ Form แรกเสมอ หากต้องการแสดง Form อื่น ๆ ต้องเขียนโค้ดสั่งเองผ่าน Events

ส่วนที่ 4 วินโดว์โค้ด (Code Editor Window) มีไว้ส าหรับเขียนโปรแกรม ถูกบังคับให้แสดงอยู่ใต้ฟอร์ม ซึ่งการเขียนโค้ดส าหรับควบคุมการท างานของโปรเจ็คและฟอร์ม สามารถเขียนได้ผ่าน Events ของคอมโพเนนท์ หรือเขียนขึ้นใหม่ตามความต้องการในรูปโปรแกรมย่อย (Sub-program) ที่มี 2 รูปแบบ Procedure หรือ Function

Page 7: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

ขั้นตอนการพัฒนาโปรแกรมเมื่อเปิด Borland Delphi สร้างโปรเจ็คใหม ่

โปรเจ็คหนึ่งก็คือแอพพลิเคชันนั่นเอง โดยปกติแล้วเมื่อมีการสร้างโปรเจ็คใหม่ทุกครั้ง เดลไฟจะตั้งชื่อเป็นมาตรฐานไว้เสมอได้แก่ โปรเจ็คชื่อ Project1 / Form1 และ Unit1 เสมอ

วางคอมโพเนนท์ลงบนฟอร์ม ก าหนดค่าคุณสมบัติและพฤติกรรม ก าหนดค่าเหตุการณ์และ/หรือเขียนค าสั่งควบคุมการท างาน บันทึกโปรเจ็ค ประมวลผลโปรแกรม การปิด/เปิดโปรแกรม

Page 8: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

ประเภทไฟล์ต่าง ๆ ของ Borland Delphi ไฟล์โปรเจ็ค (Project File .dpr) ไฟล์ที่รวบรวมรายละเอียดของโปรเจ็ค ว่าภายในโปรเจ็คหนึ่งนั้นประกอบด้วยฟอร์มหรือยนูิตอะไรบ้าง นอกจากนี้ยังท าหน้าที่สร้างฟอร์มและเรียกฟอร์มหลักของแอพพลิเคชันขึ้นมาท างานด้วย ยูนิตไฟล์ (Unit File .pas และ .dcu) ไฟล์ที่จัดเก็บมอดูลย่อยของโปรแกรม ซึ่งแต่ละยูนิตจะเก็บรายละเอียดของตัวแปร ค่าคงที่ ชนิดข้อมูล โพรซีเยอร์ และฟังก์ชัน เพื่อใช้ในการท างานภายในยูนิตนั้น ๆ ฟอร์มไฟล์ (From File .dfm) เก็บรายละเอียดของออบเจ็คที่อยู่บนฟอร์มรวมทั้งตัวฟอร์ม รวมทั้งคุณสมบัติของออบเจ็คดังกล่าวด้ว

Page 9: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

Delphi Programming

ออบเจ็ค หรือคอมโพเน้นท์ ที่นิยมใช้งาน

Label - ป้ายข้อความ (.caption) Edit - แถบรับข้อความ (.txt) Button - ปุ่ม CheckBox - ปุ่มตรวจสอบ Listbox - กล่องข้อมูล : รายการ Combobox - แถบรับ/เลือกข้อมูล : รายการ (.txt) Panel - กรอบงาน (.caption) StringGrid - ตาราง MainMenu - เมนูหลัก

Page 10: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

1. จงเขียนโปรแกรมค านวณหาพื้นที่สามเหลี่ยม Output : ค่าพื้นที่ Input : ฐาน และ สูง ตัวแปร : X = ฐาน, Y = สูง Area = ค่าพื้นที่ Process : 0.5* X * Y

X, Y

X = 0 , Y = 0, Area = 0

START

Area

STOP

Area = 0.5*X*Y

ฐาน สูง

พื้นที่สามเหลี่ยม

ค านวณ

ออกแบบจอภาพ

Page 11: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

2. จงเขียนโปรแกรมค านวณหาพื้นที่สี่เหลี่ยมคางหมู

X, Y, Z

X = 0 , Y = 0, Z = 0, Area = 0

START

Area

STOP

Area = 0.5 * (X+Y) * Z

Output : ค่าพ้ืนที่ Input : ความยาวด้าน 1,ความยาวด้าน 2 และสูง ตัวแปร : X = ความยาว 1, Y = ความยาว 2 Z = สูง , Area = พื้นที่ Process : 0.5* (X + Y) * Z

ความยาวด้าน 1 ความยาวด้าน 2 สงู

พื้นที่ คางหมู

ค านวณ

ออกแบบจอภาพ

Page 12: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

3. จงเขียนโปรแกรมค านวณหาปริมาตรทรงกรวย Output : ค่าปริมาตร Input : รัศมี และ สูง ตัวแปร : X = รัศมี Y = สูง Area = ค่าปริมาตร Process : 3.14 * (X*X) * Y X, Y

X = 0 , Y = 0, Area = 0

START

Area

STOP

Area = 3.14 * (X*X) *Y

รัศมี สูง

ปริมาตรทรงกรวย

ค านวณ

ออกแบบจอภาพ

Page 13: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

4. จงเขียนโปรแกรมค านวณค่าผ่อนงวดรถต่อเดือน Output : ค่างวดต่อเดือน Input : ราคารถ, เงินดาวน์, ดอกเบี้ย และจน.ปี ตัวแปร : X = ราคารถ, Y = ดาวน,์ R = ดอกเบี้ย, Z = จน.ปี, Mon1=เงินต้นคงเหลอื, Mon2=เงินค่าดอก, PAY = เงินงวด Process : ค านวณ - เงินตน้คงเหลือ Mon1 = (X-Y) - เงินค่าดอก Mon2 = Mon1 * R * Z - เงินงวด Pay = (Mon1+Mon2)/(Z*12)

ราคารถ (X), เงินดาวน์ (Y), ดอกเบี้ย (R), จ านวนปี (Z)

X=0 , Y=0, R=0, Z=0 Mon1=0, Mon2=0, Pay=0

START

Pay

STOP

Mon1 = (X-Y)

Mon2 = Mon1 * R * Z

Pay = (Mon1+Mon2) / Z*12

ราคารถ เงินดาวน์ ดอกเบี้ย จ านวนป ี

เงนิงวดต่อเดือน

ค านวณ

Page 14: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

5. จงเขียนโปรแกรมการทอนเงิน

Output : จ านวนธนบัตรและเหรียญที่ต้องทอน Input : จ านวนเงินทอน ตัวแปร : Money = จ านวนเงินทอน, B1000 = แบงก์พัน, B500 = แบงก์ห้าร้อย,

B100 = แบงก์รอ้ย, B50 = แบงกห์้าสิบ, B20 = แบงก์ยี่สิบ, C10 = เหรียญสิบ, C5 = เหรียญห้า, C1 = เหรียญบาท, X = เงินคงเหลือทอน Process : ค านวณหา เมื่อ X = Money - แบงก์พัน = X DIV 1000, X MOD 1000, แบงก์ห้าร้อย = X DIV 500, X MOD 500 - แบงก์ร้อย = X DIV 100, X MOD 100, แบงก์ห้าสิบ = X DIV 50, X MOD 50 - แบงก์ยี่สิบ = X DIV 20, X MOD 20, เหรียญสบิ = X DIV 10, X MOD 10, - เหรียญห้า = X DIV 5, C1 เก็บเหรยีญที่เหลือ = X MOD 5

Page 15: Delphi Programmingpaijit.lpru.ac.th/cgi-bin/Algorithm/Programming2.pdfPaijit Suksomboon Software Engineering Lampang Rajabhat University Delphi Programming Borland Delphi โปรแกรมภาษาภาพ

Paijit Suksomboon Software Engineering Lampang Rajabhat University

ทดลองเขียนโปรแกรม (แบบล าดับ)

5. จงเขียนโปรแกรมการทอนเงิน

รับค่าเงินทอน (Money)

Money = 0, B1000 = 0, B500 = 0, B100 = 0, B50 = 0, B20 = 0, C10 = 0,

C5 = 0, C1 = 0, X = 0

START

STOP

X = Money

B1000 = X DIV 1000 X = X MOD 1000

B500 = X DIV 500 X = X MOD 500

B100 = X DIV 100 X = X MOD 100

B50 = X DIV 50 X = X MOD 50

B20 = X DIV 20 X = X MOD 20

C10 = X DIV 10 X = X MOD 10

C5 = X DIV 5 C1 = X MOD 5

คุณจะได้รับเงินทอน ดังนี้ B1000, B500, B100, B50, B20, C10, C5 และ C1

จ านวนเงินทอน

แบงก์ 1000 ใบ แบงก์ 500 ใบ แบงก์ 100 ใบ แบงก์ 50 ใบ แบงก์ 20 ใบ แบงก์ 10 ใบ เหรียญ 5 เหรียญ เหรียญ 1 เหรียญ

ค านวณ