slide1
Download
Skip this Video
Download Presentation
By A. Samaporn Yendee

Loading in 2 Seconds...

play fullscreen
1 / 87

By A. Samaporn Yendee - PowerPoint PPT Presentation


  • 49 Views
  • Uploaded on

By A. Samaporn Yendee. Delphi 7 อ. สมาภรณ์ เย็นดี ภาควิชาคอมพิวเตอร์ ตึก 18 ชั้น 2 Tel. 083 9893141. จุดเด่นของ Delphi 7.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' By A. Samaporn Yendee' - leda


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

By

A. Samaporn Yendee

slide2

Delphi 7

อ. สมาภรณ์ เย็นดี

ภาควิชาคอมพิวเตอร์

ตึก 18 ชั้น 2

Tel. 083 9893141

slide3

จุดเด่นของ Delphi 7

Delphi เป็นซอฟต์แวร์ตัวแปลภาษาปาสคาล (Pascal) ที่พัฒนาโดยบริษัท Borland ซึ่งรูปแบบของภาษานั้น ได้ถูกออกแบบระบบภาษาใหม่ เพื่อสนับสนุนการเขียนโปรแกรมแบบเชิงวัตถุ (Object oriented programming หรือเรียกแบบย่อว่า OOP) การเขียนโปรแกรมแบบเชิงวัตถุ มีความแตกต่างกับการเขียนโปรแกรมแบบโครงสร้าง อยู่ด้วยกันหลายจุดส่วนใหญ่ความสามารถของโปรแกรมเชิงวัตถุ ยังคงต้องการความรู้ของการเขียนโปรแกรมแบบโครงสร้างเป็นพื้นฐาน ทั้งนี้เนื่องจากภาษาโปรแกรมเชิงวัตถุเป็นภาษาที่ออกแบบมาเพื่อเพิ่ม ประสิทธิภาพของการเขียนโปรแกรมในรูปแบบเดิม คือ ให้ง่ายต่อการพัฒนาต่อ และสามารถนำไปใช้ได้ (reusable)

slide4

จุดเด่นของ Delphi 7

Delphi7 ผ่านการพัฒนามาเกือบ 10 ปี ตั้งแต่เวอร์ชัน 1.0 ที่ทำงานบน Window 3.1x โดยมีจุดเด่นคือโปรแกรมที่ได้มีขนาดเล็กทำงานได้รวดเร็ว ซึ่งมักจะถูกนำมาเปรียบเทียบกับ Visual Basic 3.0 ในสมัยนั้นอีกประการหนึ่ง Delphi7 ใช้ภาษาปาสคาล จึงเคยถูกเปรียบเทียบว่าเป็น Visual Pascal มาแล้ว

slide5

จุดเด่นของ Delphi 7

เวอร์ชันปัจจุบันของ Delphi7 ได้รับการพัฒนาให้สามารถสร้างแอพพลิเคชันที่ทำงานบน Window ได้ดีเหมือนเดิม โดยมีการปรับปรุงให้สามารถพัฒนาแอพพลิเคชันตามแนวความคิดของ.NET ซึ่งจะช่วยให้สามารถเขียนโปรแกรมครั้งเดียวแล้วนำไปใช้งานต่างๆ ไม่ว่าจะเป็น PDA,โทรศัพท์มือถือและบนเว็บได้ขณะเดียวกัน Delphi 7 ได้รับการพัฒนาให้สามารถพัฒนาแอพพลิชันแบบข้ามแพล็ตฟอร์มได้ นั้นคือสามาถพัฒนาแอพพลิเคชันที่ทำงานได้ทั้งบน Window และ Linux

slide6

ความสามารถของ Delphi 7

Delphi 7 มีความสามารถมากมาย ได้รับการต้อนรับเป็นอย่างดีจากนักพัฒนาแอพพลิเคชันทั่วโลก รวมทั้งเมืองไทยด้วย ซึ่งจะเห็นได้จากการนำ Delphi7 ประกอบการเรียนการสอน การฝึกอบรม ตลอดจนการนำไปสร้างเป็นซอฟต์แวร์เชิงพาณิชย์จำนวนมาก ดังนี้

1.สามารถสร้างแอพพลิเคชันสำหรับ Window

2.สามารถสร้างระบบงานด้านฐานข้อมูล

3.สามารถสร้างแอพพลิเคชันรองรับ .NET  Web Service

4.สามารถใช้งานบน Linux ได้

slide7

บทนำ

Borland Delphi 7 ได้รับการพัฒนาให้สามารถเขียนโปรแกรม เพื่อใช้งานกับ Windows ได้เป็นอย่างดีเลยทีเดียว ในขณะเดียวกัน ก็สามารถนำไปเขียนได้กับระบบปฏิบัติการLinuxได้ด้วยสำหรับการเขียนโปรแกรมกับ Delphi นั้น จะใช้แนวทาง การเขียนโปรแกรมแบบ Event Driven ซึ่งเป็นการเขียนโปรแกรม ในลักษณะที่ว่า เมื่อมีเหตุการณ์อย่างใดอย่างหนึ่งเกิดขึ้น กับตัวโปรแกรม เราก็จะมีวิธีจัดการกับเหตุการณ์นั้นๆ ด้วยการเขียนคำสั่งต่างๆ รองรับเหตุการณ์ที่เกิดขึ้น

slide8

รู้จักกับ Object

ตัว Application ประกอบไปด้วยส่วนต่าง ๆ มากมาย ไม่ว่าจะเป็นปุ่มกดช่องรับข้อความ และอื่น ๆ สิ่งเหล่านี้รวมกันแล้วเรียกว่า Object

Object คือ วัตถุเป้าหมายตัวหนึ่ง ที่มีเป้าหมายไปในทิศทางที่แน่นอน เช่น Edit box จะมีฟังก์ชันต่าง ๆ ที่รองรับเหตุการณ์ต่าง ๆ ที่เกิดกับการกระทำของตัวมันเอง

slide9

การกำหนด Properties ของ Object

Property คุณสมบัติหมายถึง คุณลักษณะของออบเจ็คแต่ละตัว ที่สามารถกำหนดให้แตกต่างกันไปตามความต้องการที่ต่างกันเช่นขนาด และสีของปุ่มหรือ ข้อความของออบเจ็คที่แสดงอยู่บนปุ่มเป็นต้น

slide10

การกำหนด Properties ของ Object

Method (พฤติกรรม)

ความสามารถ ในการทำงานของออบเจ็ค เป็นการสั่งให้ฟอร์มและคอนโทรลทำงานตามที่เราร้องขอไป เช่น ในการสั่งให้ปุ่มคำสั่งทำงานตามที่เราต้องการ

Form1.Hide สั่งให้ซ่อนหน้าจอการทำงาน

Form1.Show สั่งให้ปุ่มแสดงหน้าจอการทำงาน

slide11

Event

เป็นเหตุการณ์ที่เกิดขึ้นกับฟอร์มหรือตัววัตถุเช่น Click

Event-Driven Programming คือ การเขียนโปรแกรมในลักษณะว่า “ ถ้าเหตุการณ์นี้เกิดขึ้น เราจะให้โปรแกรมของเราจัดการกับเหตุการณ์นั้นๆ อย่างไร

slide12

Form และ Component

Form เป็นหน้าต่างหลัก ซึ่งเราใช้ติดต่อกับผู้ใช้งาน การรับข้อมูล หรือการแสดงผล เราได้นำเอาสิ่งต่าง ๆ ที่เรียกว่า Component นำมาวางบน Form

หมายเหตุ ใน Delphi 7 จะเรียก Object ว่า Component

slide13

โครงสร้างแฟ้มของ Delphi

เมื่อมีการเขียนและทดสอบโปรแกรมเสร็จแล้ว ก็สามารถบันทึกสิ่งที่ได้สร้างขึ้นทั้งหมดเก็บไว้ ซึ่งสามารถเรียกขึ้นมาแก้ไขปรับปรุงภายหลังได้ โดยจะบันทึกไว้ 2 ส่วน คือ แฟ้มยูนิต (.pas) และโปรเจ็กต์ (.dpr)

slide14

แฟ้มโปรเจ็กต์ .dpr

เป็นแฟ้มหลักที่ใช้อ้างอิงถึงแฟ้มต่าง ๆ ในโปรเจ็กต์ เป็นโมดูลโค้ดภาษาออบเจ็กต์ปาสคาลได้จากการใช้คำสั่ง FileSave Project As…

เป็นแฟ้มที่เก็บคำสั่งที่เขียนขึ้นด้วยโค้ดภาษาปาสคาล สามารถเปิดดูและแก้ไขด้วยโปรแกรมเอดิเตอร์ตัวอื่นได้ อาจจะเป็นยูนิตเดียว หรือยูนิตที่เป็นของฟอร์มก็ได้ คือสามารถมีหลาย ๆ แฟ้มใน 1 โปรเจ็กต์ ได้จากการใช้คำสั่ง FileSave

แฟ้มยูนิต .pas

slide15

แฟ้มโปรเจ็กต์ .dfm

เป็นแฟ้มไบนารีที่บรรจุข้อมูลที่บอกถึงรูปร่างหน้าตาของฟอร์มนั้น ๆ ในโปรเจ็กต์หนึ่งอาจจะประกอบด้วยหลายไฟล์ก็ได้ ซึ่งแต่ละฟอร์มจะต้องมี

เป็นแฟ้มที่เก็บตัวเลือกต่าง ๆ ที่เกี่ยวกับโปรเจ็กต์นี้

เป็นแฟ้มไบนารีใช้กับแพ็คเก็จของเดลฟาย

แฟ้มยูนิต .dof

แฟ้มโปรเจ็กต์ .drf

slide16

แฟ้มโปรเจ็กต์ .res

เป็นแฟ้มไบนารี เก็บรูปของงานเดลฟาย สามารถสร้างและปรับปรุงโดยอัตโนมัติ ไม่ควรสร้างหรือเปลี่ยนแปลงแฟ้มนี้

เป็นแฟ้มโปรแกรมที่เสร็จสมบูรณ์ พร้อมจะถูกใช้งานจากผู้ใช้ เราจะคัดลอกไปรันตรงไหนก็ได้ ได้จากการใช้คำสั่ง Project  Compile Project

แฟ้มยูนิต .exe

slide17

แฟ้มโปรเจ็กต์ .dcu

จะเกิดขึ้นเมื่อมีการคอมไพล์แฟ้มยูนิต .pas ทั้งหมดในโปรเจ็กต์ ซึ่งจะถูกลิงค์เป็นแฟ้มโปรแกรม .exe

ในกรณีที่ชิ้นงานที่เขียนขึ้นเป็นไลบรารีไม่ใช่แฟ้มโปรแกรม ผลลัพธ์ที่ได้จากการคอมไพล์จะเป็นไดนามิกลิงค์ไลบรารี มีนามสกุล .dll

แฟ้มไดนามิกลิงค์ไลบรารี (Dynamic Link Library) .dll

slide19

Title bar

ComponentPalette

Menu bar

Desktops toolbar

Speed bar

Form Designer

Object

Treeiew

Object Inspector

Code Editor

slide20

ส่วนประกอบของหน้าต่างเดลฟายส่วนประกอบของหน้าต่างเดลฟาย

หน้าต่างหลักของโปรแกรมเดลฟายประกอบด้วย 4 ส่วน คือ หน้าต่างหลัก หน้าต่างฟอร์ม (Form) หน้าต่างยูนิต (Unit) และหน้าต่างออบเจ็กต์อินสเปกเตอร์ (Object Inspector) สามารถอธิบายได้ดังนี้

1. แถบเครื่องมือหลัก ประกอบด้วย

- แถบเมนู (Menu Bar) เป็นแถบที่แสดงรายการคำสั่งของโปรแกรมเดลฟาย เช่น แถบเมนู File , Edit, Search เป็นต้น

- แถบเครื่องมือ (Tool Bar) เป็นแถบเครื่องมือที่ใช้แทนคำสั่งต่าง ๆ ของโปรแกรมเดลฟาย

- แถบคอมโพเนนท์ (Component Palette) ประกอบด้วยคอมโพเนนท์ชนิดต่าง ๆ เช่น Standard , Additional, Win32 เป็นต้น ซึ่งแต่ละชนิดประกอบด้วยคอมโพเนนท์ต่าง ๆ

slide21

2. หน้าต่างฟอร์ม (Form) เป็นหน้าต่างที่เราสามารถนำคอมโพเนนท์ต่าง ๆ จากแถบคอมโพเนนท์มาวางบนฟอร์ม โดยที่สามารถแก้ไขขนาดหรือเคลื่อนย้ายคอมโพเนนท์ไปตำแหน่งต่าง ๆ รวมทั้งเพิ่มหรือลบคอมโพเนนท์ออกจากฟอร์มได้

slide22

3. หน้าต่างยูนิต (unit) เป็นหน้าต่างที่ใช้สำหรับการเขียนโปรแกรมเดลฟาย หน้าต่างนี้จะซ้อนทับกับหน้าต่างฟอร์ม

slide23

4. หน้าต่างออบเจ็กต์ อินสเปกเตอร์ (Object Inspector)

เมื่อนำคอมโพเนนต์ที่ต้องการมาวางลงบนฟอร์ม จะต้องกำหนดคุณสมบัติให้กับคอมโพเนนต์แต่ละตัวด้วย

การเพิ่มคำสั่งควบคุมการทำงานเพื่อให้แอปพลิเคชั่นสามารถทำงานโต้ตอบกับ ผู้ใช้ได้ โดยการคลิกแท็บ Event

slide24

5. หน้าต่างออบเจ็กต์ ทรีวิว (Object Treeview) ใช้ในการแสดงความสัมพันธ์ระหว่างฟอร์มและคอมโพเนนท์ (เมื่อนำคอมโพเนนท์มาวางบนฟอร์มจะปรากฏที่ ออบเจ็กต์ ทรีวิว)

slide25

องค์ประกอบสำคัญของ Delphi7

Title Barเป็นส่วนที่บอกชื่อโปรแกรมและชื่อไฟล์ที่ใช้งานอยู่

Menu Barเป็นส่วนที่ใช้เก็บคำสั่ง Delphi7

Speed Barคือกลุ่มของคำสั่งที่ใช้บ่อยซึ่งแสดงอยู่ใต้เมนูบาร์ทางด้านซ้าย

slide26

องค์ประกอบสำคัญของ Delphi7

Form Designerเป็นส่วนที่ใช้ในการออกแบบโปรแกรมที่เรียกว่า form

slide27

Property ของ Form

ใน DELPHI สามารถกำหนดค่าพร็อพเพอร์ตี้โดยผ่านเครื่องมือที่ชื่อว่า Object Inspector ซึ่งสามารถกำหนดค่าได้ 3 ลักษณะดังนี้

1. การกำหนดค่าโดยอิสระ เช่น พร็อตเพอร์ตี้ Name , พร็อบเพอร์ตี้ Caption เป็นต้น

2. การกำหนดค่าจากตัวเลือกที่มีให้ใน Object Inspector เช่น พร็อบเพอร์ตี้ Cuesor, พร็อบเพอร์ตี้ Color เป็นต้น

3. กำหนดค่าจากไดอาล็อคบ็อกซ์ เช่น พร็อบเพอร์ตี้ Font เป็นต้น

slide28

Method ของ Form

Method ที่สำคัญในการทำงานดังนี้

Show เป็น Method ที่ใช้ในการแสดง Form ขึ้นมา

ShowModalเป็น Method ที่ใช้ในการแสดง Form ขึ้นมา แบบ Modal หมายความว่า Modal Form คือ Form ที่ไม่ยอมให้ Form แสดงขึ้นมาเหนือตัวเอง Form อื่นๆ จะไม่ Active ในขณะที่ Modal Form กำลังแสดงอยู่ ดังนั้น จึงต้องปิด Form แบบ Modal เสียก่อน Form อื่นๆ จึงจะ Active และแสดง Form อื่นๆ ได้

Close เป็น Method ที่ใช้ในการ ปิด Form

Hide เป็น Method ที่ใช้ในการ ซ่อน Form

slide29

Event ของ Form

ใช้ในการตรวจจับ เหตุการณ์ ต่างๆที่เกิดขึ้น และเราใช้บ่อยๆ มีดังนี้

OnActive เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการย้ายการทำงานกลับมายัง Form

OnClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการ Click Mouse

OnClose เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการปิด Form

OnCreate เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการขอหน่วยความจำจาก Windows เพื่อเริ่มสร้าง Form

OnDblClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการ Double Click Mouse ที่ Form

OnMouseDown เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการกดปุ่ม Mouse ขาลง

OnShow เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการแสดง Form

slide30

องค์ประกอบสำคัญของ Delphi7

Component Paletteเป็นส่วนที่เก็บ componentเป็นส่วนสำคัญที่จะเป็นองค์ประกอบภายในฟอร์ม เช่น ปุ่มคลิก ปุ่มเลือก เป็นต้น

slide31

Component Palette

Component คือวัตถุต่าง ๆ ที่จะนำมาเป็นส่วนประกอบ ของชิ้นงานในฟอร์ม โดยแยกตามกลุ่มของคอมโพเนนต์Delphi ได้จัดแบ่ง Component ต่างๆ ออกเป็นกลุ่มให้เลือก ใช้งานได้ตามลักษณะงาน ทั้งหมด 33 กลุ่ม โดยแยกกันไว้ใน Component Palette ดังนี้

slide40

Component Standard

เป็นกลุ่ม Component มาตรฐานซึ่งมีการใช้งานทั่วไปใน Windows

slide43

การใช้คอมโพเนนท์

การโปรแกรมด้วยเดลฟายจะประกอบด้วยขั้นตอนต่าง ๆ ดังนี้ คือ

1. การสร้างโปรเจ็กต์ใหม่ File  New

2. การจัดเตรียมโปรแกรม ประกอบด้วย 3 ส่วน คือ- การกำหนดคอมโพเนนท์บนฟอร์ม

- กำหนดคุณสมบัติ ในส่วนส่วนของออบเจ็กต์ อินสเปกเตอร์

- การเขียนโปรแกรมในส่วนของหน้าต่างยูนิต

3. การรันโปรแกรม (ในส่วนของโปรเจ็กต์ได้ส่วนขยายเป็น .exe)

4. การบันทึกข้อมูล (ในส่วนของprojectจะได้แฟ้มที่มีส่วนขยายเป็น .dprและแต่ละ unit ในโปรเจ็กต์จะมีส่วนขยายเป็น .pas

slide44

โปรแกรม My First Program

ให้เขียนโปรแกรมป้อนข้อมูล ชื่อ และอายุ ในกรอบที่กำหนด เมื่อป้อนข้อมูลเสร็จแล้วให้กดปุ่ม OK เพื่อแสดงผลการป้อนข้อมูลทั้งหมด และถ้ากดปุ่ม Clear จะเป็นการล้างข้อมูลที่ปรากฏบนหน้าต่าง ดังรูปที่ 1

slide46

การเขียนโปรแกรมลงในอีเวนต์ (Events)

เดลฟาย เป็นภาษาที่มีการเขียนโปรแกรมแบบ Event Driven คือ ใช้เหตุการณ์ต่าง ๆ ที่เกิดขึ้นมาทำการขับเคลื่อนการทำงานของโปรแกรม

ตัวอย่าง เหตุการณ์ที่ผู้ใช้งานคลิกที่คอมโพเนนท์ Button จะเกิดเหตุการณ์ใดเหตุการณ์หนึ่งมารองรับ เช่น ลบ หรือ ออกจากโปรแกรม เป็นต้น

slide47

Event ของ Form

  • OnActive เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการย้ายการทำงานกลับเข้ามายัง Form
  • OnClose เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการปิด Form
  • OnCloseQuery เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ ก่อนจะเริ่มเปิด Form อาจจะมีการยืนยัน ก่อนการเปิด Form หรือกระทำการอื่นๆ ขึ้นอยู่กับการทำการของ ผู้เขียน
  • OnCreate เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการขอหน่วยความจำจาก Windows เพื่อเริ่มสร้าง Form
  • OnResize เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการปรับขนาดของ Form
  • OnShow เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการแสดง Form
slide48

Event ของ Label

OnClickที่เกิดขึ้นเมื่อ มีการ Click Mouse ที่คอมโพเนนท์นั้น

OnClickเป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการ Click Mouse ที่คอมโพเนนท์

OnChangeเป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนแปลงข้อความใน Edit

OnEnterเป็นเหตุการณ์ที่เกิดขึ้นเมื่อ การ Click หรือย้ายการทำงานเข้าสู่ Edit

OnExitเป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการเปลี่ยนย้ายการทำงานออกจาก Edit

Event ของ Button

Event ของ Edit

slide49

Event ของ Memo

OnChange เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนแปลงข้อความใน Memo

Event ของ CheckBox

OnClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ Click Mouse ที่คอมโพเนนท์นั้น

Event ของ ListBox

OnClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ Click Mouse ที่คอมโพเนนท์นั้น

OnEnter เป็นเหตุการณ์ที่เกิดขึ้นเมื่อการ Click หรือย้ายการทำงานเข้าสู่ ListBox

Event ของ ComboBox

OnContextPopup เป็นเหตุการณ์ที่เกิดขึ้นเมื่อ มีการแสดง Context ขึ้นมา

Event ของ RadioButton

OnClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ Click Mouse ที่คอมโพเนนท์นั้น

slide50

Event ของ ScrollBar

OnChange เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนแปลงข้อความใน ScrollBar

OnScroll เป็นเหตุการณ์ที่เกิดขึ้นเมื่อเราทำให้ Scroll เปลี่ยนตำแหน่ง

Event ของ RadioGroup

OnEnter เป็นเหตุการณ์ที่เกิดขึ้นเมื่อการ Click หรือย้ายการทำงาน เข้าสู่ GroupBox

OnExit เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนย้ายการทำงานออกจาก RadioGroup

slide51

Event ของ GroupBox

OnClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ Click Mouse ที่คอมโพเนนท์นั้น

OnEnter เป็นเหตุการณ์ที่เกิดขึ้นเมื่อการ Click หรือย้ายการทำงานเข้าสู่ GroupBox

OnExit เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนย้ายการทำงานออกจาก GroupBox

Event ของ Panel

OnEnter เป็นเหตุการณ์ที่เกิดขึ้นเมื่อClick หรือย้ายการทำงานเข้าสู่ Panel

OnExit เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการย้ายการทำงานออกจาก Panel

OnResize เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเปลี่ยนขนาดของ Panel

Event ของ ActionList

OnChange เป็นเหตุการณ์ที่เกิดขึ้นเมื่อเปลี่ยนแปลงข้อความใน ActionList

OnUpdate เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ Update ActionList

slide53

การเขียนคำสั่งควบคุมการทำงานการเขียนคำสั่งควบคุมการทำงาน

เป็นการเพิ่มคำสั่งควบคุมการทำงานเพื่อให้แอปพลิเคชั่นสามารถทำงานโต้ตอบกับผู้ใช้ได้ เมื่อผู้ใช้คลิกที่ปุ่ม โปรแกรมก็จะแสดงการทำงาน

คลิกแท็บ Event ของวินโดว์ออบเจ็คอินสเป็คเตอร์ดับเบิลคลิกที่ช่องว่าง ของอีเวนต์ OnClick เราจะเห็นชื่อโพซีเยอร์ ซึ่ง Delphi จะสร้างโค้ดว่างๆ ไว้ให้ในวินโดว์เอดิเตอร์ เพื่อให้เราใส่คำสั่งลงไประหว่างคำสั่ง begin…end;

slide54

เป็นส่วนที่ใช้ประกาศชนิดข้อมูล ตัวแปร ค่าคงที่Object

ประกาศตัวแปร Form1 ให้มีชนิดข้อมูลเป็นออบเจ็ก TForm1 ได้มาจากกำหนด Properties Name

สำหรับประกาศชนิดตัวแปร เขียนโค้ดให้อัตโนมัติถ้านำคอมโพเนนต์มาวางบนฟอร์ม

ระดับการเข้าถึงข้อมูลเฉพาะข้อมูลหรือ อินสแตนซ์ ของ Class เท่านั้นไม่อนุญาติให้ผู้ใช้ หรือ Class อื่นเข้าถึง

เข้าถึงได้จากผู้ใช้ Class ทุกคน ไม่จำกัด

ส่วนของ Implementation

คำสั่งสำหรับ Compile

เขียนโค้ดเอาไว้ให้รอให้เขียนเพิ่ม

slide56

ส่วนของ Interface เป็นส่วนที่ใช้ ประกาศชนิดข้อมูล, ตัวแปร, ค่าคงที่, Object, Procedure และ Function ซึ่งทุกสิ่งที่บรรจุไว้ในส่วนนี้ สามารถเข้าถึง และใช้งานได้จาก Unit อื่น ๆ

  • ส่วน Implementation ทำหน้าที่เหมือนส่วน Interface ต่างกันตรงที่ ขอบเขตการเข้าถึงข้อมูล คือ จะเข้าถึงข้อมูล, ตัวแปร, ค่าคงที่, Object, Procedure และ Function ได้จาก Unit นี้เท่านั้น จะไม่มีสิทธิ์เข้าถึงพื้นที่ในส่วนของ Implementation
  • ส่วน Initialization ใช้เก็บคำสั่งที่ถูกเรียกใช้งานก่อนการทำงานของ Application โดยปกติ จะทำงานก่อนที่จะสร้าง Object หรือ Form ขึ้นมา ดังนั้น มักจะใช้พื้นที่ส่วนนี้กำหนดค่าให้กับตัวแปรบางตัว
  • ส่วน Finalization ส่วนนี้ทำหน้าที่ตรงข้ามกับ Initialization คือใช้เก็บคำสั่งที่ถูกเรียกใช้งานหลังการทำงานของ Application โดยปกติ จะทำงานหลังจากสร้าง Object หรือ Form
slide59

การบันทึกโปรเจ็กต์

สำหรับการบันทึกโปรเจ็คและยูนิตในโปรเจ็คนั้น Delphi มีคำสั่งให้เลือกใช้ 4 คำสั่งดังนี้

---------------------------------------------------------------------------

Save

เป็นการสั่งให้บันทึกยูนิตในโปรเจ็คที่ทำงานอยู่ด้วย ชื่อเดิมที่เคยบันทึกมาแล้ว กรณีที่เป็น ยูนิตซึ่งยังไม่เคยถูกบันทึกมาก่อน Delphi จะแสดงไดอะล็อกบ็อกซ์ Save Unit As เพื่อให้ตั้งชื่อยูนิตที่กำลังทำงานอยู่ในขณะนั้น ซึ่งจะเหมือนกับการใช้คำสั่ง File> Save As

slide60

Save As

สำหรับบันทึกยูนิตในไฟล์เดิมให้เป็นไฟล์ใหม่ โดยเลือกจากเมนู File> Save As หลังจากนั้น Delphi จะแสดงไดอะล็อกบ็อกซ์ให้ใส่ชื่อไฟล์ใหม่ เมื่อบันทึกแล้วจะได้เป็นไฟล์ใหม่โดยที่ไฟล์เดิมยังคงอยู่

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

slide61

Save Project As

สำหรับบันทึกไฟล์โปรเจ็คเดิมเป็นชื่อใหม่ โดยเลือกจากเมนู File > Save Project As หลังจากนั้น Delphi จะแสดงไดอะล็อกบ็อกซ์ Save Project As ให้ใส่ชื่อโปรเจ็คใหม่ ส่วนไฟล์โปรเจ็คเดิมยังคงอยู่ในฮาร์ดดิสก์

slide62

การกำหนด AutoSave

เราจะสามารถให้ Delphi บันทึกให้โดยอัตโนมัติเมื่อเรารันโปรแกรมโดยมีขั้นตอนดังนี้

1. เลือก Tools  Environment Options

2. เลือกแท็บ Preference

3. ตั้งค่าตัวเลือกของ Autosave

Autosave Options

- Editor ให้บันทึกทุกไฟล์ที่มีการแก้ไขใน Delphi

- Desktop ให้บันทึกตำแหน่งการวางของหน้าต่าง ทุกครั้งที่ปิดโปรเจ็คหรือออกจากโปรแกรม Delphi

slide63

การเปิดโปรเจ็ค

การเปิดโปรเจ็คหรือไฟล์ยูนิตขึ้นมาทำงานมีรูปแบบคำสั่งให้เลือกใช้ 3 คำสั่งดังนี้

Open สำหรับเปิดไฟล์ที่เก็บไว้ขึ้นมาทำงาน ซึ่งสามารถเปิดได้ทั้งโปรเจ็ค (.dpr) ฟอร์ม (.dmf) และ ยูนิต (.pas) โดยเลือกจากเมนู File  Open

Open Project สำหรับการเปิดโปรเจ็กต์(.dpr) ที่บันทึกไว้ขึ้นมาทำงาน ทำโดยเลือกจากเมนู File  Open Project

Reopen สำหรับเปิดไฟล์ (.pas) หรือโปรเจ็ค (.dpr) ที่เพิ่งปิดไปขึ้นมาทำงาน โดยเลือกจากเมนู File  Reopen

slide64

การปิดโปรเจ็ค

Close ปิดเฉพาะไฟล์ที่แสดงอยู่ในขณะนั้น โดยเลือกจากเมนู File  Close

Close All ปิดทุกไฟล์ที่ทำงานอยู่ในขณะนั้นรวมทั้ง โปรเจ็คด้วย โดยเลือกจากเมนู File Close All

slide65

การเพิ่มฟอร์มใหม่เข้ามาใน Project

โดยปกติในการสร้างแอปพลิเคชั่นจะต้องมีการใช้ฟอร์มมากกว่าหนึ่งฟอร์ม ดังนั้นเราสามารถที่จะกระทำการเพิ่มฟอร์มเข้ามาในโปรเจ็ค

1. คลิกเพื่อเลือกเมนู File New Form หรือคลิก Toolbar

slide66

การลบไฟล์ออกจาก Project

ในกรณีที่สร้างฟอร์มขึ้นมาแล้ว แต่เราไม่ต้องการใช้ฟอร์มนั้นอีกเราสามารถที่จะลบฟอร์มนั้นได้โดย

  • เลือก Remove form Project จากเมนู Project หรือคลิก
  • เลือกชื่อไฟล์ที่ต้องการลบ
  • คลิกปุ่ม OK ยืนยันการลบ
slide67

การกำหนดฟอร์มที่จะรันการกำหนดฟอร์มที่จะรัน

ในการสร้างแอปพลิเคชั่นจะประกอบไปด้วยหลาย ๆ ฟอร์ม ดังนั้นถ้าจะรันฟอร์มใด ต้องทำการระบุพร้อมที่จะรันก่อน โดยสามารถเลือกเมนูดังนี้

  • เลือกเมนู Project  Options
  • เลือกแท็บ Forms
  • เลือกชื่อ Form ที่จะรัน ในช่อง Main Form:
  • คลิกปุ่ม OK
slide68

การสลับระหว่างหน้าต่างฟอร์มกับ Code Edit

เลือก Toggle Form/Unit จากเมนู View หรือคลิกเลือก หรือกดคีย์ลัด F12

คีย์ลัด

F1 ขอความช่วยเหลือ

F7, F8 ใช้สำหรับตรวจสอบลำดับการทำงานของโปรแกรมเพื่อหาจุด ผิดพลาด

F9 สั่งรันโปรแกรม

F11 เปิดวินโดว์ของ Object Inspector เพื่อกำหนดค่าของ Object

F12 สลับวินโดว์ระหว่าง Form Window กับ Editor Window เพื่อเขียน และออกแบบฟอร์ม

slide69

การกำหนดภาษาไทยให้กับ Delphi 7

Editor Window สามารถป้อนภาษาไทยได้ โดยใช้เมนู ToolEditor Option…. แล้วคลิกแท็บ Display เลือก Editor Font เป็น FixedSys ตามรูป

slide70

การเขียนคำอธิบายโปรแกรมการเขียนคำอธิบายโปรแกรม

  • ในการเขียนโปรแกรมไม่ว่าภาษาใดๆ จะมี Comment หรือคำอธิบายโปรแกรม เพราะเป็นเครื่องมือชิ้นสำคัญที่ผู้เขียนโปรแกรมจะเขียนเพิ่มเติม ลงในโปรแกรมเพื่อใส่คำอธิบายของสิ่งที่เขียนขึ้น โดยคำอธิบายนั้นไม่ถือเป็นคำสั่งในการทำงานใน Delphi7 มี 3 รูปแบบด้วยกันดังนี้
  • ใช้ // หน้าข้อความ
  • ใช้ /* ... */ ครอบข้อความ
  • ใช้ {...} ครอบข้อความ
  • เช่น
  • abc := 555; // ให้ตัวแปร abcเก็บค่า 555
  •         x :=10; /* ให้ตัวแปร x เก็บค่า 10 */
  •         y :=10; { ให้ตัวแปร y เก็บค่า 10 }      
slide71

ชนิดข้อมูล (Data Type)

ชนิดข้อมูลใน Pascal มีมากมายหลายชนิดดังนั้นก่อนที่เราจะกำหนดว่าใช้ข้อมูลชนิดใดเราควรจะทราบขอบเขตของแต่ละชนิดข้อมูลก่อน ในที่นี้จะกล่าวเฉพาะชนิดที่นิยมใช้

slide72

การตั้งชื่อตัวแปร

  • ควรตั้งชื่อตัวแปรให้สื่อกับงานที่ใช้ เช่น name, cost แทนที่จะตั้งชื่อ a, b ซึ่งจะไม่ได้ความหมาย
  • ชื่อตัวแปรสามารถใช้ A–Z, a–z, 0–9 และเครื่องหมายขีดล่าง ( _ ) สำหรับตัวอักษรพิเศษไม่สามารถใช้ได้ เช่น @, % ฯลฯ
  • ห้ามเว้นวรรค
  • ห้ามใช้คำสงวน (reserved word) ซึ่งจะสังเกตได้ว่าถ้าเป็นคำสงวน เมื่อทำการเขียนโปรแกรมคำนั้นๆ จะเป็นตัวหนาและไม่ควรใช้ชื่อตรงกับชื่อที่มีอยู่ใน Delphi ที่ไม่เป็นคำสงวน เช่น Integer, real ซึ่งชื่อพวกนี้เมื่อทำการกำหนดจะไม่เกิด Error แต่จะทำให้สับสน
  • ชื่อตัวแปรสามารถมีความยาวตั้งแต่ 1 ถึง 63 ตัวอักษร
  • ตัวอักษรพิมพ์ใหญ่ พิมพ์เล็กถือว่าเหมือนกัน เช่น A3 กับ a3 ถือว่าเป็นชื่อเดียวกัน
slide73

การประกาศตัวแปร

ก่อนที่จะมีการใช้ตัวแปรใด ๆ ต้องทำการประกาศตัวแปรก่อน ใน Delphi จะใช้คำว่า Var เป็นตัวบอกว่ากำลังจะทำการประกาศ ตัวแปร โดยมีรูปแบบดังนี้

Var

ชื่อตัวแปร : ชนิดข้อมูล ;

เช่น

Var

Firstname : string[50];

num1, num2 : integer;

slide74

การประกาศค่าคงที่

ถ้าค่าตัวแปรใดที่เมื่อมีการประมวลผลเราจะไม่ให้มีการเปลี่ยนแปลงค่าตัวแปรนั้น เราสามารถกำหนดให้ตัวแปรนั้นเป็นค่าคงที่ได้ ใน Delphi จะใช้คำว่า Const เป็นตัวบอกว่าเป็นการประกาศค่าคงที่ โดยมีรูปแบบดังนี้

Const

ชื่อตัวแปร = ค่าตัวแปรนั้น ;

เช่น

Const

Pi = 3.143;

File_name = ‘ Sriwattana’;

ชนิดข้อมูลของค่าคงที่จะขึ้นกับค่าที่กำหนดให้ค่าคงที่นั้น ๆ ดังตัวอย่าง Pi จะมีชนิดของข้อมูลเป็น Real ส่วน File_name จะมีชนิดข้อมูลเป็น String

slide75

การให้ค่ากับตัวแปร

ในการเขียนโปรแกรมค่าของตัวแปรอาจต้องมีการเปลี่ยนเแปลงอยู่เสมอ(ยกเว้นตัวแปรแบบค่าคงที่) ดังนั้นถ้าเราต้องการให้ค่ากับตัวเแปรใด ๆ สามารถกำหนดได้ตามรูปแบบดังนี้

ตัวแปร: = ค่าตัวแปรนั้น ;

เช่น

num1:=20;

Filename: = ‘ Sriwattana’;

slide76

ตัวดำเนินการ (Operator)

 ตัวดำเนินการทางคณิตศาสตร์

+ บวกเช่น 5+2 ได้ผลลัพธ์ 7

- บวกเช่น 5-2 ได้ผลลัพธ์ 3

* บวกเช่น 5*2 ได้ผลลัพธ์ 10

/ บวกเช่น 5/2 ได้ผลลัพธ์ 2.5

Div หารผลลัพธ์เอาเฉพาะจำนวนเต็ม (ไม่เอาเศษจากการหาร)

เช่น 5 Div 2 ได้ผลลัพธ์ 2

Mod หารผลลัพธ์เอาเฉพาะจำนวนเต็ม (ไม่เอาเศษจากการหาร)

เช่น 5 Mod 2 ได้ผลลัพธ์ 1

slide77

ตัวดำเนินการทางการเปรียบเทียบ

= เท่ากับ

< > ไม่เท่ากับ

> มากกว่า

< น้อยกว่า

>= มากกว่าหรือเท่ากับ

<= น้อยกว่าหรือเท่ากับ

slide79

กลุ่มฟังก์ชันด้านการแปลงชนิดของข้อมูล

เพื่อให้สามารถใช้งานข้ามประเภทได้ โดยไม่เกิดข้อผิดพลาด

Strtointแปลงข้อมูลจากสตริงให้เป็นตัวเลขจำนวนเต็ม

Inttost แปลงข้อมูลจากเลขจำนวนเต็มให้เป็นสตริง

Floattostrแปลงข้อมูลจากทศนิยมให้เป็นสตริง

Datatostrแปลงข้อมูลจากวันเดือนปีให้เป็นสตริง

Timetostrแปลงข้อมูลจากเวลาให้เป็นสตริง

DataTimetostr แปลงข้อมูลจากวันเวลาให้เป็นสตริง

slide80

คำสั่งแบบเลือกทำ

if … then … else จะเป็นการทำงาน ที่มีการเลือกหลายทางเลือก

รูปแบบ if เงื่อนไข then

Statement 1;

Else if เงื่อนไข then

Statement 2;

Else if เงื่อนไข then

Statement 3;

Else

Statement 4;

การใช้งาน if … then … else

if … then … else จะเป็นการทำงานที่มีการเลือก 2 ทางเลือก

รูปแบบ if เงื่อนไข then

Statement1;

Else

Statement2;

slide81

การใช้งาน Dialog Box

Dialog Box ถือเป็น Form อีกชนิดหนึ่ง มีการโต้ตอบกับผู้ใช้งาน ซึ่งสามารถเรียกใช้ได้ดังนี้

ShowMessage แสดงข้อความอย่างเดียว

เป็นการสร้าง Formเพื่อบรรจุข้อความสั้นๆ เพื่อบอกกับผู้ใช้งาน โดยหลังจากผู้ใช้งานใช้งานเสร็จแล้ว กดปุ่ม เพื่อปิด Dialog box

รูปแบบ คำสั่งShowMessage(‘ข้อความ’); ตัวอย่างShowMessage(\'สวัสดัครับ\');

slide82

MessageDlg แสดงข้อความและตอบโต้กับผู้ใช้งาน

เป็นการสร้าง Form ที่นอกจากจะแสดงข้อความให้ผู้อ่าน ได้อ่าน แล้วผู้ใช้งานจะต้องเลือก Click ปุ่มใดปุ่มหนึ่ง เพื่อปิด Dialog box ซึ่งเราจะนำผลการ Click เลือกนั้น ไปใช้งานต่อมีรูปแบบดังนี้

รูปแบบ MessageDlg(Msg, DialogType, Button, HelpCtx) Msg คือ ข้อความที่เราจะแสดงใน Dialog box DialogType คือ ประเภทของข้อความซึ่งมีหลายประเภท Button คือ ปุ่มที่มีใน Dialog box HelpCtx คือ หมายเลขข้อมูลเชื่อมโยงกับ Help ถ้าไม่มี กำหนดเป็น 0

slide84

ประเภทของปุ่ม

mrYes

mrNomrOK

mrCancel

mrAbort

mrRetry

mrIgnore

mrHelp

mrAll

mbYes

mbNombOK

mbCancel

mbAbort

mbRetry

mbIgnore

mbHelp

mbAll

slide85

รูปแบบ คำสั่ง MessageDlg(ข้อความ,ประเภท,ปุ่ม,ข้อมูลเชื่อมโยงช่วยเหลือ); ตัวอย่าง

MessageDlg(\'Confirm Your Answer ?\', mtConformation,[mbOK,mbCancel,mbHelp],0);

slide86

InputBox รับข้อความที่กรอกจากผู้ใช้งาน

สำหรับการเรียกใช้ InputBox นั้น เราจะเรียกผ่านคำสั่งดังนี้รูปแบบ InputBox(Caption,Prompt,Default); Caption คือ ข้อความบน Title bar ของ Dialog box Prompt คือ ข้อความที่ถาม Default คือ ค่า Default ถ้าผู้ใช้งานไม่กรอกข้อความอะไร แล้ว Click OKตัวอย่าง InputBox(\'ข้อมูลลับ\',\'กรุณากรอกชื่อของคุณ, Please fill your name\' ,\'Name\');

slide87

InputQuery รับข้อความจากผู้ใช้ไปเก็บไว้ในตัวแปรได้ทันที

ซึ่งในการใช้งานคำสั่ง InputBox นั้น เราต้องมีตัวแปร 1 ตัว ไว้เก็บผลลัพธ์ ที่ได้จากการกรอกข้อความเอาไว้ ซึ่งเราสามารถนำชื่อตัวแปรนั้นมาใส่เอาไว้ในคำสั่ง InputQuery ได้เลย ซึ่งมีรูปแบบคำสั่งดังนี้รูปแบบ InputQuery(Caption, Prompt, VarName); Caption คือ ข้อความบน Title bar ของ Dialog box Prompt คือ ข้อความที่ถาม

VarName คือ ชื่อตัวแปรที่จะใช้เก็บค่าที่กรอกหลังจากคลิกปุ่ม

ตัวอย่าง InputQuery(\'ข้อมูลส่วนบุคคล\',\'กรุณาใส่จำนวนเงินเดือนที่คุณต้องการ\',Salary); ข้อมูลที่ได้ จะถูกเก็บในตัวแปร Salary

ad