รหัสโครงการ 3S13C087

Browser สำหรับคนพิการที่ไม่สามารถใช้ Keyboard ได้ (Doramon Browser)

ประเภท โปรแกรมเพื่อช่วยคนพิการ

 

รายงานฉบับสมบูรณ์

เสนอต่อ

ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ

สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ

กระทรวงวิทยาศาสตร์ เทคโนโลยีและสิ่งแวดล้อม

 

ได้รับทุนอุดหนุนโครงการวิจัย พัฒนาและวิศวกรรม

โครงการแข่งขันพัฒนาโปรแกรมคอมพิวเตอร์แห่งประเทศไทย ครั้งที่ 3

ประจำปีงบประมาณ 2543

 

โดย

ผู้วิจัย นายธนาคม ตาฬวัฒน์

อาจารย์ที่ปรึกษาโครงการ อาจารย์ พิพัฒน์ ศุภศิริสันต์

มหาวิทยาลัยเทคโนโลยี พระจอมเกล้าธนบุรี

1. บทคัดย่อ

ในยุคข้อมูลข่าวสารปัจจุบันนี้ คอมพิวเตอร์ และ เครือข่ายอินเทอร์เน็ตนับเป็นสิ่งที่มีความสำคัญอย่างยิ่งในการทำงาน การติดต่อกับบุคคลอื่นและค้นหาข้อมูลข่าวสารต่างๆเป็นอย่างมาก เพราะในสมัยนี้เครื่องคอมพิวเตอร์ และ ระบบเครือข่ายอินเทอร์เน็ตได้ถูกทำให้ใช้ได้ง่ายขึ้นมากประกอบกับมีความสะดวกรวดเร็ว จึงเป็นที่นิยมใช้กันอย่างแพร่หลายในบุคคลกลุ่มต่างๆ ทั้ง เด็กและผู้ใหญ่ รวมถึงผู้พิการด้วย จนถึงบัดนี้นักพัฒนาโปรแกรมได้พัฒนาโปรแกรมที่ให้ผู้พิการได้มีโอกาสได้ใช้คอมพิวเตอร์และเครือข่ายอินเทอร์เน็ตมากขึ้น ยกตัวอย่างเช่น การอ่านออกเสียงข้อความที่ปรากฏบนหน้าจอ ให้ผู้ที่พิการทางสายตาได้รับฟัง การขยายขนาดของหน้าจอให้ใหญ่ขึ้นสำหรับผู้ที่สายตามองเห็นได้เลือนลาง และโปรแกรมสอนภาษามือให้ผู้ที่พิการทางหู(หูหนวก,หูตึง) แต่ยังมีผู้พิการอีกประเภทหนึ่งที่ยังไม่ค่อยมีโปรแกรมสำหรับพวกเขาเหล่านั้นมากเท่าที่ควรคือ “ผู้พิการทางด้านอวัยวะ”

2. บทนำ

จากเหตุผลที่ยังไม่มีคนพัฒนาโปรแกรมประเภทนี้จึงทำให้ ผู้พัฒนามีความคิดที่จะทำโครงงานนี้ขึ้นมา โดยใช้หลักการทำงานคล้ายกับ Browser ทั่วๆไป อย่างเช่น Microsoft Internet Explorer หรือ Netscape Navigator เพียงแต่จะออกแบบมาให้ง่ายต่อการใช้ของคนพิการทางมือ และเพิ่มฟังก์ชันการทำงานพิเศษเข้าไปอีกคือ เมื่อเวลาที่ผู้ใช้นำเมาส์ไปวางที่ Button สักระยะ Browser ก็จะนับเวลา Delay จนถึงเวลาที่กำหนดก็จะทำการคลิ๊กให้โดยอัตโนมัติ การทำเครื่องหมายใน Radio Button และ Check Box ก็ใช้หลักการเดียวกัน ส่วนการพิมพ์ข้อความ Doramon Browser ตัวนี้จะมีคีย์บอร์ดพิเศษ(Doramon Keyboard)ในตัว เพื่อที่จะให้ได้ข้อความออกมา การใช้งานดังกล่าวอาจจะมีความยุ่งยากและเสียเวลากว่า Browser ธรรมดาซักเล็กน้อย ถ้าใช้ในบุคคลปกติแต่จะเป็นประโยชน์มากสำหรับผู้พิการ ที่ไม่สามารถใช้ Browser ธรรมดาได้ ซึ่งจากคีย์บอร์ดตัวนี้ผู้พัฒนาได้เน้นพัฒนาไปในการกับโปรแกรมอื่น ที่ไม่ใช้ Browser ใน ระบบปฏิบัติการ Windows 95 98 ME ด้วย และยังมีความสามารถพิเศษอีก คือ สามารถที่จะทำการเลือกที่จะ Click ซ้าย,Click ขวา, Double Click ซ้าย, Double Click ขวา,คลิ๊กแล้วลาก (Drag) ได้เป็นอย่างดีอีกด้วย

Acknowledgment: Software Doramon Browser โปรแกรมนี้ได้รับทุนสนับสนุนโครงการแข่งขันพัฒนาโปรแกรมคอมพิวเตอร์แห่งประเทศไทย ครั้งที่ 3 จากศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ สำนักงานพัฒนาวิทยาศาสตร์และเทคโนโลยีแห่งชาติ ภายใต้ชื่อโครงการ “Browser สำหรับคนพิการที่ไม่สามารถใช้แป้นพิมพ์ได้ (Doramon Browser)”

 

3. สารบัญ

หน้าปก (Cover)

1. บทคัดย่อ

2. บทนำ (แนวความคิด ความสำคัญ และความเป็นมา)

3. สารบัญ

4. วัตถุประสงค์และเป้าหมาย

4.1 แผนการดำเนินการและขั้นตอนการพัฒนาซอฟต์แวร์

5. รายละเอียดของการพัฒนา

5.1 ทฤษฎี หลักการและเทคนิคหรือเทคโนโลยีที่ใช้

5.1.1 หลักการทำงานของ Doramon Keyboard

5.1.1.1 การทำงานในส่วนของ ระบบแป้นพิมพ์

5.1.1.2 การทำงานในส่วนของ ระบบ Auto Clik

5.1.1.3 การทำงานในส่วนของ ระบบ History

5.1.1.4 การทำงานในส่วนของ ระบบ HotKey WIN Application

5.1.2 หลักการทำงานของ Doramon Browser

5.2 เครื่องมือที่ใช้ในการพัฒนา (Tool)

5.3 รายละเอียดของโปรแกรมที่ได้พัฒนาในเชิงเทคนิค

5.3.1 Input/Output Specification

5.3.2 Function specification

5.3.3 โครงสร้างของซอฟต์แวร์ (Design)

5.3.4 อื่นๆ

5.4 ขอบเขตและข้อจำกัดของโปรแกรมที่พัฒนา

5.5 คุณลักษณะของอุปกรณ์ที่ใช้กับโปรแกรม

6. กลุ่มผู้ใช้โปรแกรม

7. ผลของการทดสอบซอฟต์แวร์

8. ปัญหาและอุปสรรค

9. แนวทางในการพัฒนาและประยุกต์ร่วมกับงานอื่น ๆ ในขั้นต่อไป

10. ข้อสรุปและข้อเสนอแนะ

11. เอกสารอ้างอิง

12. ภาคผนวก

ภาคผนวก A (ASCII Table และ API Function)

ภาคผนวก B (คู่มือการติดตั้ง-การนำโปรแกรมออกจากระบบ)

ภาคผนวก C (คู่มือการใช้งาน)

 

4. วัตถุประสงค์และเป้าหมาย

การสร้างโปรแกรม Doramon Browser เพื่อช่วยเหลือผู้พิการมือ ที่ไม่สามารถกดคีย์บอร์ดและคลิ๊กเมาส์ได้เหมือนบุคคลปกตินี้ มีวัตถุประสงค์อยู่สองประการด้วยกันคือ ประการแรก โปรแกรม Doramon Browser จะทำให้ผู้พิการเหล่านั้นได้มีสิทธิ์ที่จะรับรู้ทราบข้อมูลข่าวสารและติดต่อกับบุคคลอื่นๆทางอินเทอร์เน็ตได้เหมือนบุคคลปกติ ส่วนประการที่สอง Doramon Browser สามารถที่จะนำมาใช้ในบุคคลที่เป็นปกติได้ กล่าวคือถ้าโปรแกรมนี้ได้รับความนิยมอย่างแพร่หลายจะเป็นการเปลี่ยนพฤติกรรมการใช้อินเทอร์เน็ตของบุคคลในยุคปัจจุบันที่ต้องใช้ปุ่มคลิ้ก ให้เป็นเพียงแค่การนำไปวางเฉยๆก็สามารถเข้าไปใน Link นั้นๆได้ โดยการปรับ Delay ให้มีค่าน้อยกว่าที่ใช้ในผู้พิการ กล่าวคือให้เหลือเพียง 1 วินาที ซึ่งเป็นเวลาต่ำสุดที่โปรแกรมยอมให้ทำได้ เพื่อป้องกันการเลื่อนเมาส์ไปผ่าน Hyper Link เฉยๆ โดยไม่เจตนาที่จะเข้าไปใน Link นั้นๆ

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

4.1 แผนการดำเนินการและขั้นตอนการพัฒนาซอฟต์แวร์

การพัฒนาSoftware “Doramon Browser & Doramon Keyboard” มีขอบเขตของการดำเนินงานดังนี้

แผนการดำเนินงาน
ระยะเวลาที่ใช้ดำเนินงานจริง
1.ศึกษา Interrupt ของเมาส์(INT33H) ในระบบปฎิบัติการ Windows (ก่อนทำสัญญาและพิธีมอบทุน)
15 วัน

2.ออกแบบ,สร้างและพัฒนา Doramon Keyboard
โดยแบ่งเป็น 2.1 ทำกราฟฟิกต่างๆ 5 วัน

2.2 สร้างตัว Web Browser 1 เดือน 20 วัน
2.3 พัฒนาเทคนิคเพิ่มเติม 15 วัน

2 เดือน

3. ออกแบบ,สร้างและพัฒนา Doramon Browser
โดยแบ่งเป็น 2.1 ทำกราฟฟิกต่างๆ 2 วัน

2.2 สร้างตัว Doramon Keyboard 10 วัน
2.3 พัฒนาเทคนิคเพิ่มเติม 3 วัน

5 วัน *

 

* หมายเหตุ เหตุผลที่ผู้พัฒนาลดเวลาพัฒนา Doramon Browser ลงเนื่องมาจากผู้พัฒนาเล็งเห็นว่าถ้า Doramon Keyboard สามารถที่จะใช้งานได้กับทั้ง ระบบปฏิบัติการ จะเป็นผลดีกับผู้พิการมากกว่าเช่น พิมพ์งาน Microsoft Word ได้ทันทีโดยไม่ต้อง Copy แล้วไปวางแบบที่เคยตั้งใจไว้ว่าจะทำในตอนต้น เลยเพิ่มเวลาให้กับการพัฒนา Keyboard พิเศษทั้งงานทางด้าน Graphic และ Feature ต่างๆและลดเวลาในการพัฒนา Doramon Browser ลง

5.รายละเอียดของการพัฒนา

5.1ทฤษฎี หลักการและเทคนิคหรือเทคโนโลยีที่ใช้

เนื่องจากผู้พัฒนาได้เน้นพัฒนาไปในตัวของ Doramon Keyboard มากกว่า จึงขอยกหลักการทำงานของ Doramon Keyboard ขึ้นมาก่อนดังนี้

5.1.1 หลักการทำงานของ Doramon Keyboard

Doramon Browser จะประกอบด้วย 4 ส่วนหลักๆได้แก่ แป้นพิมพ์, AutoClick, History, HotKey

- Public Declare Function GetActiveWindow Lib "user32"
“สำหรับรับค่า Hwnd ของวินโดวส์ที่ Active อยู่”

–
Public Declare Function SetActiveWindow Lib "user32"
“สำหรับส่งค่า Hwnd ไปให้วินโดวส์นั้น Active ”

–
Public Declare Function SetWindowPos Lib "user32"
“สำหรับรับค่า Hwnd ของวินโดวส์ที่ Active อยู่ตำแหน่งของเมาส์ (ใช้คู่กับ Type Point API)”

–
Public Event KeyDown(KeyCode As Integer, Shift As Integer)
“สำหรับส่งเหตุการณ์ KeyBoard Down”

–
Public Event KeyUp(KeyCode As Integer, Shift As Integer)
“สำหรับส่งเหตุการณ์ KeyBoard Up”

- Public Declare Sub keybd_event Lib "user32"
“สำหรับส่งค่า Keyboard Event ไปให้วินโดวส์ที่ Active อยู่”

–
Public Declare Function ActivateKeyboardLayout Lib "user32"
“สำหรับเปลี่ยน Keyboard Layout เป็นค่าก่อนหน้าหรือถัดไป”


สำหรับหลักการทำงานคร่าวๆ ระบบแป้นพิมพ์ เป็นดังนี้

ขั้นตอนแรกเมื่อผู้ใช้นำเมาส์ไปวางในที่ๆต้องการจะพิมพ์ข้อความ ระบบจะจำ Hwnd ของวินโดวส์ที่กำลัง Active นั้นอยู่ เมื่อ ผู้ใช้กด Doramon Keyboard ก็จะส่ง Focus กลับไปที่ Hwnd นั้นแล้วทำการส่ง Keyboard Event (ลงเป็นรหัส ACSII เช่น ต้องการตัว a ส่ง ค่า 65 ต้องการ A ต้องส่ง Shift Down ตามด้วย 65 ตามด้วย Shift UP เป็นต้น) เมื่อส่งไปที่ Hwnd ที่ต้องการแล้วก็ส่งค่า เดิม(a) ไปที่ ระบบ History เพื่อทำการประมวลผลต่อไป

*หมายเหตุ เกี่ยวกับ Function ทั้งหมด (ค่าอินพุตของ Function, Return Value จาก Function) สามารถดูเพิ่มเติมได้ที่ ภาคผนวก A

- Declare Sub mouse_event Lib "user32"
“สำหรับส่งเหตุการณ์ต่างๆไปเช่น Mouse Up , Mouse Down”

–
Event MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
“สำหรับส่งเหตุการณ์ Mouse Down”

–
Event MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
“สำหรับส่งเหตุการณ์ Mouse Up”

–
Event MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
“สำหรับส่งเหตุการณ์ Mouse Move”

–
Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA"

“สำหรับดูว่าตอนนี้วินโดวส์เกิดเหตุการณ์อะไรอยู่ (Hook)”

- Declare Function UnhookWindowsHookEx Lib "user32" Public Declare Function
“สำหรับบอกว่าไม่ดูเหตุการณ์ของวินโดวส์ตอนนี้แล้ว(Unhook)”

- SetCursorPos Lib "user32"
“สำหรับ ส่งเมาส์ไปตำแหน่งที่ต้องการ ”

–
Public Type POINTAPI: x As Long: y As Long: End Type
“สำหรับประกาศ Type ใหม่เพื่อให้ใช้ได้กับ คำสั่ง “Setwindowspos”

สำหรับหลักการทำงานคร่าวๆของระบบ Auto Click เป็นดังนี้

ขั้นตอนแรกเมื่อผู้ใช้นำเมาส์ไปวางในที่ที่ต้องการ โปรแกรมจะมี Timer 1 คอยจับเวลาว่าผู้ใช้วางเมาส์ไว้ตรงตำแหน่งนี้นานเท่าไรแล้ว เมื่อถึงเวลาที่ตั้งค่าไว้ (Dwell Time) โดยไม่มีการขยับเลื่อน โปรแกรมจะทำการส่ง Function Keyboard_Event ด้วย Event Mouse Down แล้วตามด้วย Mouse Up ก็จะเป็นการคลิ๊ก แต่ถ้าผู้ใช้ต้องการดับเบิ้ลคลิ๊กก็สามารถส่ง เหตุการณ์คลิ๊กดังกล่าวไป 2 ชุดติดต่อกัน แต่ที่พิเศษไปกว่านั้นคือ ฟังก์ชัน คลิ๊กแล้วลาก (Drag) ก็จะใช้ Timer เพิ่มอีกตัว การทำงานในแบบ คลิ๊กแล้วลากนั้น ช่วงแรกจะมีลักษณะคล้ายกับการคลิ๊กแต่ว่าจะเปลี่ยนจากการ Click Up เป็นการเปิดให้ Time ตัวที่สองทำงาน แล้วเมื่อ Timer ตัวที่สองทำงานเสร็จ(ทำงานเหมือนตัวแรก) โปรแกรมก็จะส่ง Click Up แล้วย้ายการทำงานจาก Timer 2 -> Timer 1

 

*หมายเหตุ เกี่ยวกับ Function ทั้งหมด (ค่าอินพุตของ Function, Return Value จาก Function) สามารถดูเพิ่มเติมได้ที่ ภาคผนวก A

StrSQLInsert = "insert into frequency values ('" & DataToInsertByFrequency & "')"
“เป็น Command Line สำหรับเก็บข้อความที่ผู้ใช้คีย์เขาไปเก็บไว้ ”

strSQLQuery = "Select count (word) ,word from Frequency where word like '%' group by word order by 1 desc"
“เป็น Command Line สำหรับเรียกดูข้อมูล ตามพจนานุกรม ”

strSQLQueryFrequency = "Select count (word) ,word from Frequency where word like '" _
& DataToQueryByFrequency & "%' group by word order by 1 desc , 2"
“เป็น Command Line สำหรับเรียกดูข้อมูล ตามความถี่ของการใช้งานคำศัพท์คำนั้น”

strSQLQuery = "Select distinct (word) from Frequency where word like '" &
DataToQueryByFrequency & "%' order by word"
“เป็น Command Line สำหรับเรียกดูข้อมูลทั้งหมด (เพื่อนำไปลบทิ้ง) ”

rst.Open strSQLQueryFrequency, cnn, , , adCmdText

“เป็น Command Line สำหรับให้โปรแกรมทำงานตาม strSQLQueryFrequency”

rst.Open StrSQLInsert, cnn, , , adCmdText

“เป็น Command Line สำหรับให้โปรแกรมทำงานตาม StrSQLInsert ”


สำหรับหลักการทำงานคร่าวๆของระบบ History เป็นดังนี้

ขั้นตอนแรกเมื่อผู้คลิ๊กหรือรอให้ระบบ Auto Click ทำการคลิ๊กให้ ที่ปุ่มอักษร A-Z , ก-ฮ , 0-9ระบบก็จะนำตัวอักษรไปใส่ไว้ใน TextBox สีเหลือง พร้อมกับเรียกเอา History ที่ใส่ไว้ออกมาแสดงที่ ListBox สีขาว ซึ่งจะเป็นแบบเรียงตามความถี่หรือแบบเรียงตามพจนานุกรมก็แล้วแต่ผู้ใช้เลือกในหน้า Option สมมุติว่าเลือกแบบเรียงตามความถี่ ก็จะ Queryโดยใช้ strSQLQueryFrequency มาแสดงที่ ListBox เมื่อผู้ใช้มองเห็นคำศัพท์ที่ต้องการแล้ว ก็สามารถคลิ๊กที่คำที่ต้องการได้เลย การส่งคำศัพท์ชุดนั้นไปใช้วิธีเดียวกับ การส่งตัวอักษรในแป้นพิมพ์ แต่ตัดส่งไปทีละตัวต่อมาเมื่อผู้ใช้กดปุ่ม Tab , Space Bar , Enter หรือ ส่งข้อความที่ต้องการไปแล้ว TextBox ข้อความใน TextBox ก็จะหายไปเป็นการเริ่มต้น Query ใหม่

 

*หมายเหตุ เกี่ยวกับ Function ทั้งหมด (ค่าอินพุตของ Function, Return Value จาก Function) สามารถดูเพิ่มเติมได้ที่ ภาคผนวก A

Shell(GetWindowsDir & “\notepad.exe”, vbNormalFocus)
“เป็น Command Line สำหรับเปิดโปรแกรม Note Pad”

Shell(GetWindowsDir & "\write.exe", vbNormalFocus)
“เป็น Command Line สำหรับเปิดโปรแกรม WordPad”

Shell("rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1", vbNormalFocus)
“เป็น Command Line สำหรับเปิด Install/Uninstall (ใน Control Panel)”

Shell(" rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2", vbNormalFocus)
“เป็น Command Line สำหรับเปิด Windows Setup (ใน Control Panel)”

Shell(" rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3", vbNormalFocus)
“เป็น Command Line สำหรับเปิด Startup Disk (ใน Control Panel) ”

ShellExecute(MainPage.hwnd, "Open", GetWindowsDir, "", App.Path, 1)
“เป็น Command Line สำหรับเปิด Directory ของวินโดวส์

ShellExecute(MainPage.hwnd, "Open", GetSystemDir, "", App.Path, 1)
“เป็น Command Line สำหรับเปิด Directory ของ System Windows”

Shell(GetSystemDir & "\sysedit.exe", vbNormalFocus)
“เป็น Command Line สำหรับเปิด Sysedit”

Shell(GetWindowsDir & "\regedit.exe", vbNormalFocus)
“เป็น Command Line สำหรับเปิด Regedit”

 

สำหรับหลักการทำงานคร่าวๆของระบบ Hot Key Windows Application เป็นดังนี้

ขั้นตอนแรกเมื่อผู้คลิ๊กหรือรอให้ระบบ Auto Click ทำการคลิ๊กให้ ที่ ComboBox ที่เขียนว่าHotkey Windows Application เมื่อผู้ใช้เลือกโปรแกรมก็จะส่งผ่านค่าการเลือกไปเลือกคำสั่งที่จะให้แสดงผล เพื่อเปิดโปรแกรมต่างๆ ซึ่งมีให้เลือกถึง 65% ของ Windows เพื่อประโยชน์อย่างแท้จริง

*หมายเหตุ เกี่ยวกับ Function ทั้งหมด (ค่าอินพุตของ Function, Return Value จาก Function) สามารถดูเพิ่มเติมได้ที่ ภาคผนวก A

5.1.2หลักการทำงานของ Doramon Browser

WebBrowser.GoBack
“เป็น Command Line สำหรับเรียกดูข้อมูลย้อนหลัง”

WebBrowser.GoForward
“เป็น Command Line สำหรับเรียกดูข้อมูลเดินหน้า”

WebBrowser.Refresh
“เป็น Command Line สำหรับเรียกดูข้อมูลที่ใหม่ล่าสุด”

WebBrowser.GoHome

“เป็น Command Line สำหรับเรียกดูข้อมูลตั้งต้น”

WebBrowser.GoSearch
“เป็น Command Line สำหรับเรียกดูข้อมูล สำหรับ Search ”

 

สำหรับหลักการทำงานคร่าวๆ Doramon Browser เป็นดังนี้

รับข้อความจาก Doramon Keyboard แล้วนำมาแต่งเพิ่มเช่น ผู้ใช้พิมพ์ Nectec.or.th มาตัวDoramon Browser จะเปลี่ยนให้เป็น http://www.nectec.or.th แล้วทำการส่งไปเรียกข้อมูลจากอินเทอร์เนตมาดูได้ทันที

*หมายเหตุ เกี่ยวกับ Function ทั้งหมด (ค่าอินพุตของ Function, Return Value จาก Function) สามารถดูเพิ่มเติมได้ที่ ภาคผนวก A

5.2 เครื่องมือที่ใช้ในการพัฒนา(Tool)

Doramon Browser ตัวนี้ใช้ Tool ในการพัฒนาอยู่ 3 ตัวด้วยกันคือ

    1. โปรแกรม Microsoft Visual Basic Version 6.0 ใช้ในการสร้างตัวโปรแกรมทั้งหมด
    2. โปรแกรม Microsoft Visual C++ ใช้สร้าง Icon ที่ใช้ในโปรแกรมทั้งหมด
    3. โปรแกรม Adobe PhotoShop 5.5 ใช้ออกแบบกราฟิกต่างๆในตัว Browser
    4. โปรแกรม Microsoft FrontPage 2000 สำหรับสร้างเวปเพจสำหรับทดลองโปรแกรม

5.3 รายละเอียดของโปรแกรมที่ได้พัฒนาในเชิงเทคนิค(Software Specification)

5.3.1 Input/output specification

อินพุตที่ใช้ใน Doramon Browserจะใช้เพียงแค่ Tag Ball หรือเมาส์ที่ไม่มีปุ่ม เพียงตัวเดียวโดยจะไม่ใช้ฟังก์ชันการคลิ๊กใดๆทั้งสิ้น (ใช้เฉพาะการเลื่อนของบอลภายในตัวเมาส์เท่านั้น) ส่วนเอาพุตที่ต้องใช้คือ จอมอนิเตอร์ เท่านั้นเอง

5.3.2 Functional specification

โปรแกรมDoramon Browser และ Doramon Keyboard โปรแกรมที่เรียกใช้ DLL ของวินโดวส์หลายตัวมาดังที่ได้กล่าวมาข้างต้น (หัวข้อ5.1 หลักการทำงานของโปรแกรม) ซึ่งจำเป็นแยกเป็นข้อๆ เพื่อความชัดเจน ทางผู้จัดทำจึงเห็นสมควรย้าย Function specification ที่จำเป็นต้องใช้พร้อมรายละเอียดไปที่หัวข้อดังกล่าว (หัวข้อ5.1 หลักการทำงานของโปรแกรม) แล้วอย่างละเอียด ส่วนรายละเอียดปลีกย่อยของ Function สามารถหาดูได้จาก (ภาค ผนวก A) ซึ่งจะประกอบด้วย ASCII Table และ API Function ซึ่งผู้จัดทำได้เตรียมไว้เรียบร้อยแล้ว

5.3.3 โครงสร้างของซอฟต์แวร์ (design)

ในตัวของ Doramon Browser จะประกอบไปด้วย 2 ส่วนหลักๆ

ส่วนแรก คือตัว Doramon Browser ที่ออกแบบมาเป็นพิเศษสำหรับคนพิการ

ส่วนที่สอง คือ ตัว Doramon Keyboard ตัวนี้จัดทำไว้เพื่อคนพิการทางด้านมือโดยเฉพาะ

ซึ่งจุดเด่นของโปรแกรมนี้จะอยู่ตรงที่ การปรับแต่ง Interrupt ของเมาส์(INT33H)

ให้มีความสัมพันธ์กับ ฟังก์ชันของเวลา (Time Delay) และ DLL (Dynamic Link Library) ของ Microsoft Windows ที่มีอยู่เดิมแล้ว เมื่อครบเวลาที่ตั้งไว้ (Dwell Time) จะเกิดการคลิ๊กโดยอัตโนมัติ จุดเด่นของโปรแกรมจุดที่สองคือ Doramon Keyboard ที่ทำขึ้นมาใหม่ทั้งหมดตั้งแต่การออกแบบ งานด้านกราฟฟิก ให้ผู้ใช้สามารถปรับแต่งทั้งหมดได้เองไม่ว่าจะเป็นด้านสีสรร หรือ เวลา Delay ต่างๆ และการสร้างตัวโปรแกรม Keyboard เพื่อให้ได้งานที่มีประสิทธิภาพมากที่สุด และที่พัฒนาเพิ่มเติมมาอีก 2 จุดคือ 1. ระบบ History 2. Hot Key Windows Application ซึ่งจะได้กล่าวในหัวข้อถัดไป (ในหัวข้ออื่นๆ)

5.3.4 อื่นๆ

- ระบบที่เพิ่มเติมเข้ามา

    1. ระบบ History จากเดิมที่เคยตั้งใจจะเน้นพัฒนาไปทางด้านเบาส์เซอร์แต่เมื่อเปลี่ยนมาเน้นไปในด้านของตัวคีย์บอร์ดให้สามารถทำงานกับทั้ง Windows ได้ จึงต้องทำการเปลี่ยนจากระบบAuto Completes เป็นระบบ History แทน ซึ่งจะติดตั้งอยู่ในตัว Doramon Keyboard เลย ซึ่งจะทำให้สามารถทำงานได้ครอบคลุมมากกว่า
    2. ระบบ Hot Key Windows Application ระบบนี้จะทำหน้าที่เรียก Application ต่างๆในวินโดวส์มาได้ถึง 65 % โดยไม่ต้องไปเลือกจากที่อื่นเลย

- โปรแกรม Doramon Browser ตัวนี้สามารถทำงานได้ บนระบบ ปฏิบัติการWindows 95 98 Me

5.4 ขอบเขตและข้อจำกัดของโปรแกรมที่พัฒนา

ข้อจำกัดด้านโปรแกรม Doramon Browser

Doramon Browser จะเป็น Web Browser สำหรับคนพิการ เพื่อที่ใช้ในการเยี่ยมชมเว็บไซต์ต่างๆ และสามารถตอบโต้ได้ (เช่น ตอบกระทู้ ส่งจดหมายอิเล็กทรอนิกส์ กรอกแบบสอบถาม Download Files ต่างๆได้) สุดท้ายยังสามารถที่จะใช้เรียกดูข้อมูลใน ฮาร์ดดิสก์ และ แผ่นดิสก์ได้อีกด้วย แต่มีปัญหาอยู่ที่การคลิ๊ก Link เนื่องจากถ้า เซตค่า ให้ Doramon Browser เป็นเวปเพจหลัก โปรแกรม จะต้อง Write Register ของ Windows ใหม่ ทางผู้จัดทำจึงไม่สร้างขึ้นไว้เพราะถ้าเป็นเช่นนั้น ผู้ใช้คนอื่นที่ใช้ Internet Explorerเวลาคลิ๊ก Link ก็จะไปเปิดโปรแกรม Doramon Browser ขึ้นมาทุกครั้งทำให้มีปัญหากับระบบได้

ข้อจำกัดด้านโปรแกรม Doramon Keyboard

Doramon Keyboard จะเป็น Keyboard ที่สามารถส่งค่า A-Z , a-z , ก-ฮ , 0-9 โปรแกรมต่างๆใน วินโดวส์ได้ แต่ มีข้อจำกัดกับบางโปรแกรม ( โปรแกรมที่เปลี่ยน KeyboardLayout อัตโนมัติ เช่น Microsoft Word , Internet Explorer , Wordpad ) เราจะต้องทำการเปลี่ยนค่า Keyboard Layout เอง เวลาที่เราจะต้องการเปลี่ยนภาษา ( เปลี่ยนที่ด้านล่างขวาของจอภาพ ข้างนาฬิกา)

 

5.5 คุณลักษณะของอุปกรณ์ที่ใช้กับโปรแกรม

โปรแกรมนี้สามารถใช้ได้โดยไม่ต้องมีอุปกรณ์เพิ่มเติมแต่ถ้าต้องการใช้ Track Ball ก็สามารถนำมาใช้ร่วมแทนเมาส์ได้

6. กลุ่มผู้ใช้ซอฟต์แวร์

เนื่องจากในปัจจุบันนี้เครือข่ายอินเทอร์เน็ตได้เข้ามามีบทบาทที่สำคัญมากในชีวิตประจำวันของคนเราเป็นอย่างมาก นับตั้งแต่การติดต่อกับบุคคลยิ่งอยู่ในระยะทางไกลๆอินเทอร์เน็ตเป็นสื่อที่รวดเร็วและประหยัดที่สุด แม้ว่าอินเทอร์เน็ตจะมีประโยชน์มากเพียงใดก็ยังมีกลุ่มบุคคลอยู่ประเภทหนึ่งซึ่งมีความพิการทางมือที่ไม่สามารถใช้งาน Browser และ คีย์บอร์ด เหมือนคนปกติได้ การสร้าง Doramon Browser ขึ้นมาจะเป็นประโยชน์กับพวกเขามากในการที่จะทำให้พวกเขาสามารถใช้อินเทอร์เน็ตเพื่อเยี่ยมชมและติดต่อกับเว็บไซต์ต่างๆได้ด้วยตนเอง และนอกจากนั้นถ้าเรามองในมุมที่กลับกัน โปรแกรม Doramon Browser ตัวนี้จะสามารถใช้ได้ในบุคคลปกติได้อย่างดีทีเดียวคือจะสามารถใช้อินเทอร์เน็ตโดยไม่ต้องกดปุ่มที่เมาส์เลย ซึ่งทางผู้จัดทำว่าอาจจะเป็น แนวทางในการใช้อินเทอร์เน็ตและคอมพิวเตอร์แบบใหม่เลยก็ย่อมได้

7. ผลของการทดสอบซอฟต์แวร์

ได้ทำการทดสอบโปรแกรมกับ ระบบMicrosoft Windows 98 สามารถใช้ได้ดีเจอ ปัญหาอยู่ 4 ที่ซึ่จะได้กล่าวพร้อมวิธีแก้ไขในหัวข้อถัดไปแต่ยังไม่ได้ทดสอบกับระบบอื่นๆ แต่โดยหลักการแล้วจะสามารถ ใช้ได้กับ Microsoft Windows 95 และ Microsoft Windows ME และคาดว่าน่าจะให้ได้กับ Windows NT 4.0 และ 2000 ได้อีกด้วย

8.ปัญหาและอุปสรรค

    1. Doramon Browser ไม่ได้ทำการ Registry ระบบทำให้เวลาคลิ๊กลิงค์ใน Doramon Browser จะเปิด Internet Explorer ขึ้นมาซึ่งข้อนี้เป็นความตั้งใจของผู้จัดทำเองเพื่อไม่ให้ระบบ Registry ของวินโดวส์สับสน
    2. Doramon Keyboard ไม่สามารถส่งข้อความไปให้ TextBox หรือ ComboBox ที่มีลักษณะทำ Hi Light ให้อัตโนมัติได้เช่น Address Bar ของ Internet Explorer แนวทางแก้ไข ทางผู้พัฒนาจะทำ Service Pack ไปให้ Update หลังจากแก้ไข Module เรียบร้อย
    3. Doramon Keyboard กับภาษาไทยในบางโปรแกรม เช่น Microsoft Word , WordPad แนวทางแก้ไข ต้องทำการแก้ Keyboard Layout (ด้านล่างขวาข้างนาฬิกาตรงกัน)

9. แนวทางในการพัฒนาและประยุกต์ร่วมกับงานอื่น ๆ ในขั้นต่อไป

สามารถนำ Doramon Keyboard ไปใช้ในบุคคลปกติได้เพราะว่าโปรแกรมที่พัฒนา พัฒนาให้สามารถใช้ได้กับ เมาส์ได้ กล่าวคือ สามารถรับคลิ๊กจากเมาส์โดยตรงเลยก็ได้ ผลที่ได้ตามมาคือ ระบบ History ทำให้ได้คำศัพท์ที่รวดเร็วยิ่งขึ้น

10. ข้อสรุปและข้อเสนอแนะ

โปรแกรม Doramon Browser แบ่งออกเป็น 2 ส่วนใหญ่ๆคือ

    1. Doramon Browser ใช้สำหรับเปิด WebPages บนอินเทอร์เน็ต
    2. Doramon Keyboard แบ่งเป็น 3 ส่วน คือ
      1. ส่วนแป้นพิมพ์ ใช้สำหรับส่งตัวอักษรต่างๆ
      2. ส่วน Auto Click ใช้เป็นระบบในการคลิ๊ก , ดับเบิ้ลคลิ๊ก , คลิ๊กแล้วลาก
      3. ส่วน History ใช้แสดงผลคำศัพท์ที่เคยใช้งานแล้ว
      4. ส่วน Hot Key Windows Application ใช้เปิดโปรแกรมต่างๆในวินโดวส์

11. เอกสารอ้างอิง

ฉัททวุฒิ พืชผล , คู่มือเรียน Visual Basic 6, --กรุงเทพ: โปรวิชั่น, 2542 , 438 หน้า

ทรงศักดิ์ ลิ้มสิริสันติกุล , เรียน/เล่น/ใช้ PhotoShop 5.5, --กรุงเทพ: ซีเอ็ด , 680 หน้า

Evangelos Petroutsos , Visual Basic 6 Developer’s Handbook , Sanfrancisco , Sybex 1468 Page

Howard Hawhee,MCP ,MCSD Visual Basic 6 Exam 70-175 and 70-176 , Microsoft , 1202 Page

Microsoft Newsgroups: http://msdn.microsoft.com/newsgroups/default.asp?

Deja Newsgroups: http://www.deja.com

 

12. ภาคผนวก

 

12.1.1 ตารางรหัส ACCSI

12.1 ภาคผนวก A (ASCII Table และ API Function)

12.1.2 API Function

*หมายเหตุ คำอธิบายการใช้งานแต่ละฟังก์ชั่น อยู่ที่หัวข้อที่ 5.1.1 “ทฤษฎีหลักการและเทคนิคหรือเทคโนโลยีที่ใช้”

12.2 ภาคผนวก B (คู่มือการติดตั้ง-การนำโปรแกรมออกจากระบบ)

12.3.1 การติดตั้งโปรแกรม Doramon Browser

  1. คลิ๊ก Start เลือก Run พิมพ์ a:\setup.exe หรือ d:\setup.exe กด Enter จะได้ ดังรูป “Run”

  2. จะพบกับ รูปที่สอง “Install”
  3. ถ้าเป็น แผ่น Diskette จะต้องใส่แผ่น 1-10ไปเรื่อยๆตามคำสั่งของโปรแกรม แต่ถ้าเป็น CD-Rom ให้ข้ามขั้นตอนนี้ไปได้เลย ดังรูปที่สาม “Setup”
  4. จากนั้นจะพบหน้าจอ Welcome To Doramon Browser installation Program คลิ๊ก OK
  5. จากนั้นจะเห็นรูปด้านล่างขวา ให้คลิ๊กที่ ปุ่มรูป Setup
  6. จะได้รูปด้านล่างซ้ายคลิ๊ก Continue
  7. การติดตั้งจะดำเนินต่อไปโดยอัตโนมัติ จนจบ
  8. เริ่มใช้โปรแกรม คลิ๊ก Start -> Program -> Doramon Browser -> Doramon Browser

 

12.3.2 การลบโปรแกรม Doramon Browser

  1. คลิ๊ก Start -> Settings -> Control panel-> Add/Remove-Programs -> เลือก Doramon Browser
  2. จะพบกับข้อความเตือนถ้าต้องการจะนำออกให้คลิ๊ก Yes

 

12.3 ภาคผนวก C (คู่มือการใช้งาน)

12.3.1 การใช้งาน Doramon Keyboard

เมื่อเปิดโปรแกรม จะเห็นหน้าตาของ Doramon keyboard เป็นดังนี้

การใช้งานโดยหลัก จะแบ่งเป็น 4 ส่วน คือ ส่วน History, ส่วนแป้นพิมพ์, ส่วน Auto Click และ ส่วนHot Key Windows Application ซึ่งจะขอกล่าวเรียงตามความสำคัญมาก -> น้อย ดังนี้

ส่วน Auto Click (อยู่ Block ทางด้านขวาสุด)

ส่วนนี้จะทำหน้าที่ คลิ๊กซ้าย, คลิ๊กขวา, ดับเบิ้ลคลิ๊กซ้าย, ดับเบิ้ลคลิ๊กขวา หรือ คลิ๊กแล้วลาก แล้วแต่ผู้ใช้งานเลือก ปุ่มสีฟ้า 3 ปุ่มด้านบนทำหน้าที่เป็นเป็นปุ่มคำสั่ง Click, Double Click, Dragส่วนสีชมพูที่มีรูปเมาส์ เป็นการเลือกว่าจะกระทำกับเมาส์ปุ่มไหน ซ้าย หรือ ขวา ส่วนปุ่ม สุดท้ายรูปไฟแดงจะเป็นปุ่มซึ่งทำหน้าที่หยุดการทำงานของ ส่วนนี้ ซึ่งค่าต่างๆสามารถปรับได้ที่หน้า Option ซึ่งจะได้กล่าวถึงต่อไป (การคลิ๊กจะเกิดขึ้นเมื่อ ProgressBar สีฟ้าด้านล่าง เต็มหลอด)

ส่วน แป้นพิมพ์ (อยู่ Block กลาง)

ทำหน้าที่รับการคลิ๊กจาก ระบบ Auto click แล้วส่งค่าไปยังโปรแกรมอื่นๆในวินโดวส์ที่ Active อยู่ วิธีการทำให้วินโดวส์ที่เราต้องการส่งข้อความ Active ก็เพียงแค่ คลิ๊กที่วินโดวส์นั้น สังเกตุสี Taskbar จะเข้มกว่า การทำงานของปุ่มต่างๆจะคล้ายๆกับ คีย์บอร์ดทั่วไป

ส่วน History (อยู่ Block ทางด้านซ้ายสุด)

เมื่อผู้ใช้พิมพ์ค่าจากคีย์บอร์ดระบบ History จะทำการเก็บค่าทุกครั้งที่กด ปุ่ม Space Bar, Enter, Tab แล้วนำมาแสดงผลเพื่อเพิ่มความรวดเร็ว การจะนำค่าที่ ระบบHistory แสดงออกมาให้นั้นเพียงแค่คลิ๊กหรือให้ระบบ Auto Click ทำการคลิ๊กให้ ที่คำที่ต้องการได้ทันที

ส่วน Hot Key Windows Application (อยู่ Combo Box ทางด้านล่างสุด)

การใช้งานเพียงแค่คลิ๊กหรือให้ระบบ Auto Click ทำการคลิ๊กให้ที่ลูกศร ข้างCombo Box ก็จะได้คำสั่งออกมาให้เลือกมากมาย

 

12.3.1 การใช้งาน Doramon Keyboard

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

  1. ตัวเลือก จะใช้ปรับค่าเกี่ยวกับ การมีเสียง Beep , Show keyboard อยู่ด้านบนเสมอ ฯลฯ
  2. ระยะเวลา จะเกี่ยวกับเมาส์ คือเวลารอคลิ๊ก เวลารอการหยุดลาก และ ระยะสั่นที่ยอมรับได้ซึ่งหมายถึงการสั่นของเมาส์เพียงเล็กน้อย จะทำให้โปรแกรมมองไม่เห็นซึ่งเป็นค่าที่สามารถตั้งได้
  3. รูปแบบเมาส์ จะเป็นการบอกว่า ปุ่มสีฟ้า-ปุ่มสีชมพู ทำหน้าที่อะไรซึ่งได้กล่าวไปข้างต้นแล้ว
  4. ปรับแต่งคีย์บอร์ด แทบนี้ทำหน้าที่ปรับคีย์เปลี่ยนหน้าตาของคีย์บอร์ดได้ทั้งหมด ไม่ว่าจะเป็นสี หรือ แบบปุ่ม หรือแม้กระทั่ง ฟอนต์ของปุ่มต่างๆ
  5. การเติมคำอัตโนมัติ จะเป็นแทบที่ทำหน้าที่เลือกว่าข้อมูลที่ได้ให้เรียงในแบบใด ตามความถี่ของการใช้งานหรือ ตามพจนานุกรม

12.3.1 การใช้งาน Doramon Browser

การเรียกใช้งาน Doramon Browser นั้นสามารถเรียกได้จาก ปุ่ม Doramon Browser ใน Doramon Keyboard การพิมพ์ชื่อเวป นั้นทางผู้จัดทำได้ทำการเติมอัตโนมัติมาจาก http://www.nectec.or.th

จะเหลือที่ผู้ใช้ต้องพิมพ์แค่ nectec.or.th เท่านั้นเอง

Hosted by www.Geocities.ws

1