3. การใช้กล่องข้อความข่าวสาร (MessageBox) และการใช้กล่องป้อนข้อมูล

การใช้กล่องข่าวสาร (MessageBox) แบบมีเงื่อนไข

                MsgBox( ) เป็นฟังชั่นหนึ่งของ Visual Basic  ใช้สำหรับแสดงข้อความให้ผู้ใช้โปรแกรมเห็นเช่น ข้อความทั่วไป ข้อความเตือน ข้อความคำถาม หรือข้อความบอกความผิดพลาด แล้วรอผู้ใช้โปรแกรมคลิกปุ่มเพื่อทำงานต่อไป ดังภาพ 5-16

ภาพ 5-16 กล่องข่าวสาร (MessageBox)

                การเรียกใช้ฟังก์ชั่น ทำได้โดยใช้รูปแบบอย่างง่ายดังนี้





เช่น เมื่อใช้ MsgBox  ( ถูกต้องแล้วครับ) ก็ได้ตามภาพ 5-15 

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

                1.การกำหนดปุ่มที่ใช้บนกล่องข่าวสาร

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

 

                Response คือ ตัวแปรที่เก็บค่าตัวเลขของการคลิกปุ่มต่างๆ

                ข้อความคำถาม เป็นข้อความที่แสดงบนกล่องข่าวสาร

                ชื่อกล่องข่าวสาร เป็นข้อความที่แสดงบนแถบชื่อของกล่องข่าวสาร

                แบบของปุ่ม (Style)  เป็นตัวกำหนดว่าจะให้มีปุ่มอะไรบ้าง อาจใช้ชื่อหรือค่าตัวเลขของปุ่มดังนี้

ชื่อ

ค่าตัวเลข

ปุ่มที่แสดง

OKOnly

0

ปุ่ม OK ปุ่มเดียว

OKCancel

1

ปุ่ม OK และ Cancel

AbortRetrylgnore

2

ปุ่ม Abort ,Reaty และlgnor

YesNoCancel

3

ปุ่ม Yes ,No และ Cancel

YesNo

4

ปุ่ม Yes และ No

RetryCancel

5

ปุ่ม Retry และCancel

 

ตัวอย่าง โปรแกรม เมื่อต้องการถามว่า “ต้องการเล่นหรือไม่” และ ต้องการให้ผู้เล่นตอบ “Yes” และ “No” ในกล่องข่าวสารชื่อ “My Game” ต้องเรียกใช้ฟังก์ชั่น MsgBox( ) ดังนี้

 

 
                            

ผลที่ได้เป็นดังภาพ 5-17

ภาพ 5-17 การแสดงปุ่มที่กล่องข่าวสาร

2.การนำผลของการคลิกปุ่มตอบไปใช้

เมื่อคลิกปุ่มใดปุ่มหนึ่งจะได้เป็นค่าคงที่หรือค่าตัวเลขดังต่อไปนี้

ปุ่ม

ค่าคงที่

ค่าตัวเลข

OK

OK

1

Cancel

Cancel

2

Abort

Abort

3

Retry

Retry

4

Ignore

Ignore

5

Yes

Yes

6

No

No

7

 

 

 

 

 

 

 

 

               


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

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

 

 

3. การแสดงไอคอนที่กล่องข่าวสาร

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

ชื่อ

ค่าตัวเลข

ไอค่อนที่แสดง

Critical

16

รูป x

Question

32

รูป ?

Exclamation

48

รูป !

Information

64

รูปตัว i

                ตัวอย่าง

 

 ผลที่ได้เป็นดังภาพ 5-18

ภาพ 5-18การแสดงไอคอนที่กล่องข่าวสาร

 

4.การแสดงไอคอนที่กล่องข่าวสารร่วมกับปุ่มต่างๆ

                ทำได้โดยกำหนดค่าตัวเลขที่ Style ให้เป็นค่าของปุ่มรวมกับค่าของไอออน เช่น ต้องการเสียงไอคอนเตือน (Exclamation) พร้อมกับปุ่ม Yes และ No ค่าของ Style ก็เท่ากับ 4 + 48

 

                ตัวอย่าง

 


                       

ผลได้เป็นดังภาพ 5-19

ภาพ 5-19 การแสดงไอคอนและปุ่มที่กล่องข่าวสาร

 

การใช้กล่องป้อนข้อมูล (InputBox)

                InputBox ( ) เป็นฟังก์ชั่นหนึ่งของ Visual Basic ใช้สำหรับแสดงข้อความที่เป็นคำถามรอให้ผู้ใช้โปรแกรมทำการป้อนข้อมูลในกล่องข้อความ แล้วคลิกที่ปุ่มดังภาพ 5-22

ภาพ 5-22 การใช้กล่องป้อนข้อมูล

ผลลัพธ์ที่ได้จากการป้อนข้อมูลในกล่องข้อความ หรือจากการคลิกที่ปุ่มจะเป็นค่าข้อมูลแบบ String ดังนั้นต้องใช้ตัวแปร String เพื่อมารับค่าจาก InputBox ตามรูปแบบดังนี้


 

ากรูปตัวอย่าง ข้อความคำถามคือ “กรุณาป้อนคะแนน” และชื่อกล่องป้อนข้อมูลคือ “ป้อนคะแนนนักเรียน”
         เมื่อผู้ใช้ป้อนคะแนนเข้าไปแล้วคลิกที่ปุ่ม OK จะได้ค่าข้อมูลแบบ String หรือเป็นข้อความตัวเลขเก็บไว้ตัวแปรชื่อ In_Value$ ดังนั้นต้องแปลงให้เป็นตัวเลขก่อนจึงจะนำไปทำการคำนวณได้ดังนี้

 
                  ตัวแปร Score จะเก็บค่าข้อมูลแบบตัวเลข แต่ถ้าใช้เป็นข้อความ เช่น ชื่อ หรืตัวเลขที่นำไปคำนวณ ก็นำตัวแปร In_Value$
ไปใช้ได้เลย

                   ถ้าผู้ใช้ไม่ต้องการป้อนค่า ให้คลิกที่ปุ่ม Cancel จะได้ค่าของ In_Value$ เท่ากับ “”  (ไม่มีค่า หรื Null String)


Comments