listbox : รายการข ูลอม เป นรายการข ูอมี่ลท...

37
เอกสารประกอบการสอน .ธรรมรัตน สิมะโรจนา 97 ListBox : รายการขอมูล เปนรายการขอมูลที่พรอมใหเราเลือก จากตัวเลือกที่อยูภายใน พร็อพเพอรตี้สําคัญของ ListBox Sort เปนการเรียงลําดับใหกับขอมูลใน ListBox Multicolumn เปนการกําหนดวาจะใหแสดงผลมากกวาหนึ่งคอลัมนหรือไม ColumnWidth เปนการกําหนดความกวางคอลัมนในการแสดงผลของ ListBox ปกติกําหนดเปน 0 คือ พอดีกับความยาวขอความ ScrollAlwaysVisible จะกําหนดวาตองแสดง ScrollBar ตลอดเวลาหรือไม SelectionMode จะกําหนดวาสามารถเลือกขอมูลไดมากกวา 1 ขอมูลตอครั้งหรือไม ซึ่งมี 4 แบบ คือ o None ไมอนุญาตใหเลือก o One เลือกไดหนึ่งตัวเลือกเทานั้น o MultiSimple เลือกไดมากกวา 1 ตัวเลือก o MultiExtended เลือกไดมากกวา 1 ตัวเลือก และสามารถใชกดปุShift คางไวเพื่อเลือกรายการที่อยูติดกัน หรือกดปุCtrl คางไวเพื่อเลือก รายการที่ไมติดกัน SelectedItem เปนการรีเทิรนคาที่ไดจากการเลือก SelectedValue เปนการรีเทิรนคาอินเด็กซของตัวที่ถูกเลือก Items เปนคอลเล็คชั่นที่เราใชการกําหนดขอมูลเขาไปใน ListBox หรืออานขอมูลจาก ListBox ตามที่เราระบุ Index ซึ่งมีคอลเล็กชั่น Items ที่นาสนใจ ไดแก Count จํานวนขอมูลที่อยูใน ListBox Item เปนการระบุถึงขอมูลในรายการวาเปนตัวที่เทาไหร โดยจะคืนคา Index กลับมาใหเรา ถาเปนตัวแรกของรายการ Index = 0, ถาไมมีขอมูลใด เลย Index = -1, เพราะฉะนั้น ขอมูลตัวสุดทายของรายการ Index = Count - 1 เมธอดสําคัญของ ListBox Add การเพิ่มขอมูลใน ListBox โดยตอทายรายการที่มีอยู Insert การแทรกขอมูลใน ListBox โดยตองระบุ Index ที่ตองการ RemoveAt การลบขอมูลออกจาก ListBox โดยตองระบุ Index ที่ตองการ Clear เปนการลบขอมูลทุกตัวออกจาก ListBox ClearSelected การเคลียรขอมูลที่ถูกเลือก อีเวนตสําคัญของ ListBox Click เปนอีเวนตที่เกิดขึ้นเมื่อคลิกทีListBox เพื่อเลือกขอมูลจากรายการขอมูล วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรชั้นสูง Microsoft Visual Basic 2005

Upload: others

Post on 05-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 97

ListBox : รายการขอมูล เปนรายการขอมูลที่พรอมใหเราเลือก จากตวัเลือกที่อยูภายใน

พร็อพเพอรตีส้ําคัญของ ListBox • Sort เปนการเรียงลําดับใหกับขอมูลใน ListBox • Multicolumn เปนการกําหนดวาจะใหแสดงผลมากกวาหนึ่งคอลัมนหรือไม • ColumnWidth เปนการกําหนดความกวางคอลัมนในการแสดงผลของ ListBox ปกติกําหนดเปน 0 คอื

พอดีกับความยาวขอความ • ScrollAlwaysVisible จะกําหนดวาตองแสดง ScrollBar ตลอดเวลาหรือไม • SelectionMode จะกําหนดวาสามารถเลือกขอมูลไดมากกวา 1 ขอมูลตอครั้งหรือไม ซ่ึงมี 4 แบบ คือ

o None ไมอนุญาตใหเลือก o One เลือกไดหนึ่งตวัเลือกเทานัน้ o MultiSimple เลือกไดมากกวา 1 ตัวเลือก o MultiExtended เลือกไดมากกวา 1 ตัวเลือก และสามารถใชกดปุม

Shift คางไวเพือ่เลือกรายการที่อยูติดกนั หรือกดปุม Ctrl คางไวเพื่อเลือกรายการที่ไมตดิกัน

• SelectedItem เปนการรีเทิรนคาที่ไดจากการเลือก • SelectedValue เปนการรีเทิรนคาอินเดก็ซของตัวที่ถูกเลือก • Items เปนคอลเล็คช่ันที่เราใชการกาํหนดขอมูลเขาไปใน ListBox หรืออานขอมูลจาก ListBox

ตามที่เราระบุ Index ซ่ึงมีคอลเล็กชั่น Items ที่นาสนใจ ไดแก • Count จํานวนขอมูลที่อยูใน ListBox • Item เปนการระบุถึงขอมูลในรายการวาเปนตัวท่ีเทาไหร โดยจะคนืคา Index กลับมาใหเรา

ถาเปนตัวแรกของรายการ Index = 0, ถาไมมีขอมูลใด ๆ เลย Index = -1, เพราะฉะนัน้ขอมูลตัวสุดทายของรายการ Index = Count - 1

เมธอดสําคัญของ ListBox • Add การเพิ่มขอมูลใน ListBox โดยตอทายรายการที่มีอยู • Insert การแทรกขอมลูใน ListBox โดยตองระบุ Index ที่ตองการ • RemoveAt การลบขอมูลออกจาก ListBox โดยตองระบุ Index ที่ตองการ • Clear เปนการลบขอมูลทุกตัวออกจาก ListBox • ClearSelected การเคลียรขอมูลที่ถูกเลือก อีเวนตสําคัญของ ListBox • Click เปนอีเวนตที่เกิดขึ้นเมื่อคลิกที่ ListBox เพื่อเลือกขอมูลจากรายการขอมูล

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 2: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 98

ตัวอยางการใชงาน ListBox 1. ออกแบบส วนติดตอกับผูใช (User Interface)

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmListBox 1. Form Text การใชงาน ListBox

2. ListBox Name LstFaculty 3. ListBox Name LstProgram

Name btnOK 4. Button Text OK Name btnClear 5. Button Text Clear Name btnExit 6. Button Text Exit

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmListBox Dim Faculty, Program As String ----------------------------------------------------------------------------------- Private Sub frmListBox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

lstFaculty.Items.Add("วิทยาศาสตร") lstFaculty.Items.Add("ครุศาสตร") lstFaculty.Items.Add("มนุษยศาสตร") lstFaculty.Items.Add("วิทยาการจัดการ")

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 3: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 99

lstFaculty.Items.Add("เทคโนโลยีอุตสาหกรรม") lstProgram.Items.Add("คอมพิวเตอรธุรกิจ") lstProgram.Items.Add("คอมพิวเตอรศึกษา") lstProgram.Items.Add("วิทยาการคอมพิวเตอร") lstProgram.Items.Add("เทคโนโลยีสารสนเทศ") lstProgram.Items.Add("คอมพิวเตอรอุตสาหกรรม") lstProgram.Items.Add("ภาษาอังกฤษ") lstProgram.Items.Add("รัฐประศาสนศาสตร") lstProgram.Items.Add("อุตสาหกรรมทองเที่ยว") End Sub ----------------------------------------------------------------------------------- Private Sub lstFaculty_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lstFaculty.SelectedIndexChanged Faculty = lstFaculty.SelectedItem End Sub ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click

MessageBox.Show("คุณเลือกคณะ " & Faculty & vbCrLf & "โปรแกรมวิชา " & Program, "ผลการเลือก") End Sub ----------------------------------------------------------------------------------- Private Sub lstProgram_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lstProgram.SelectedIndexChanged Program = lstProgram.SelectedItem End Sub ----------------------------------------------------------------------------------- Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click lstFaculty.ClearSelected() lstProgram.ClearSelected() End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 4: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 100

ตัวอยางการใชงาน ListBox 1. ออกแบบส วนติดตอกับผูใช (User Interface)

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmUseListBox 1. Form Text เพิ่ม ลบ แกไข แทรกขอมูล

2. ListBox Name lst1 Name txt1 MultiLine True

3. TextBox

Text Name btnAdd 4. Button Text เพิ่ม Name btnDelete 5. Button Text ลบ Name btnUpdate 6. Button Text แกไข Name btnInsert 7. Button Text แทรก

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 5: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 101

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmUseListBox Dim Iselect As Integer ----------------------------------------------------------------------------------- Private Sub frmUseListBox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load lst1.Items.Add("Item 1") lst1.Items.Add("Item 2") lst1.Items.Add("Item 3") lst1.Items.Add("Item 4") End Sub ----------------------------------------------------------------------------------- Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click lst1.Items.Add(txt1.Text) txt1.Text = "" End Sub ----------------------------------------------------------------------------------- Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click lst1.Items(Iselect) = txt1.Text txt1.Text = "" End Sub ----------------------------------------------------------------------------------- Private Sub lst1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lst1.SelectedIndexChanged Iselect = lst1.SelectedIndex txt1.Text = lst1.SelectedItem End Sub ----------------------------------------------------------------------------------- Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click lst1.Items.RemoveAt(Iselect) txt1.Text = "" End Sub ----------------------------------------------------------------------------------- Private Sub btnInsert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInsert.Click lst1.Items.Insert(Iselect, txt1.Text) txt1.Text = "" End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 6: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 102

ComboBox : รายการขอมูลชนิดพิเศษ เปนรายการขอมูลชนิดพิเศษที่รวมเอาความสามารถของ TextBox และ ComboBox ไวดวยกัน คือ นอกจากจะคลิกเลือกรายการที่มีแลว ยงัสามารถเลือกโดยการพิมพช่ือขอมูลที่ตองการ (ซ่ึงอาจจะบรรจุอยูภายใน ComboBox) ก็ไดเชนกัน พร็อพเพอรตีส้ําคัญของ ComboBox • DropDownStyle เปนรูปแบบการแสดงผลขอมูลของ ComboBox ซ่ึงมี 3 แบบ ไดแก

• Simple เปนแบบที่ใหเลือกโดยการพิมพช่ือขอมูลอยางเดียว • DropDown ใหเลือกขอมูลจาก ComboBox • DropDownList เปนแยยทีใ่หเลือกโดยการเลือกจากรายการอยางเดยีว

• MaxDropDownItem เปนการกําหนดจํานวนรายการที่แสดงเมื่อคลิกเลือกที่ ComboBox • MaxLength เปนการกําหนดความยาวตวัอักษรที่จะปอนไดใน ComboBox • Sorted เปนการเรียงลําดับใหกับขอมูลใน ComboBox • SelectedItem เปนการรีเทิรนคาที่ไดจากการเลือก • SelectedValue เปนการรีเทิรนคาอินเดก็ซของตัวที่ถูกเลือก • Items เปนคอลเล็คช่ันที่เราใชการกาํหนดขอมูลเขาไปใน ComboBox หรืออานขอมูลจาก

ComboBox ตามที่เราระบุ Index ซ่ึงมีคอลเล็กชั่น Items ที่นาสนใจ ไดแก • Count จํานวนขอมูลที่อยูใน ComboBox • Item เปนการระบุถึงขอมูลในรายการวาเปนตัวท่ีเทาไหร โดยจะคนืคา Index กลับมาใหเรา

ถาเปนตัวแรกของรายการ Index = 0, ถาไมมีขอมูลใด ๆ เลย Index = -1, เพราะฉะนัน้ขอมูลตัวสุดทายของรายการ Index = Count - 1

เมธอดสําคัญของ ComboBox • Add การเพิ่มขอมูลใน ComboBox โดยตอทายรายการที่มีอยู • Insert การแทรกขอมลูใน ComboBox โดยตองระบุ Index ที่ตองการ • RemoveAt การลบขอมูลออกจาก ComboBox โดยตองระบุ Index ที่ตองการ อีเวนตสําคัญของ ListBox • Click เปนอีเวนตที่เกิดขึ้นเมื่อคลิกที่ ComboBox เพื่อเลือกขอมูลจากรายการขอมูล

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 7: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 103

ตัวอยางการใชงาน ComboBox

1. ออกแบบส วนติดตอกับผูใช (User Interface)

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmComboBox 1. Form Text การใช ComboBox Name cboEdu 2. ComboBox Text การศึกษา Name cboWork 3. ComboBox Text อาชีพ Name btnOK 4. Button Text OK Name btnExit 5. Button Text Exit

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 8: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 104

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmComboBox Dim edu, work As String ----------------------------------------------------------------------------------- Private Sub frmComboBox_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

cboEdu.Items.Add("ตํ่ากวาปริญญาตรี") cboEdu.Items.Add("ปริญญาตรี") cboEdu.Items.Add("ปริญญาโท") cboEdu.Items.Add("ปริญญาเอก") cboWork.Items.Add("ขาราชการ") cboWork.Items.Add("พนักงานเอกชน") cboWork.Items.Add("ธุรกิจสวนตัว") cboWork.Items.Add("รับจาง") End Sub ----------------------------------------------------------------------------------- Private Sub cboEdu_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboEdu.SelectedIndexChanged edu = cboEdu.SelectedItem End Sub ----------------------------------------------------------------------------------- Private Sub cboWork_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboWork.SelectedIndexChanged work = cboWork.SelectedItem End Sub ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click

MessageBox.Show("คุณจบการศึกษา " & edu & vbCrLf & "คุณประกอบอาชีพ " & work, "ผลการเลือก") End Sub ----------------------------------------------------------------------------------- Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click Me.Close() End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 9: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 105

NumbericUpDown : เพิ่มลดตัวเลข

เปนคอลโทรลที่ใหผูใชปอนตัวเลข ซ่ึงสามารถกําหนดชวงของตัวเลขได โดยไมตองเขียนชุดคําสั่งในการตรวจสอบเหมอืนกับ TextBox พร็อพเพอรตีส้ําคัญของ NumericUpDown • Minimum คาต่ําสุดของ NumericUpDown • Maximum คาสูงสุดของ NumericUpDown • Value คาที่อยูระหวาง Minimum กับ Maximum ใน NumericUpDown • UserEdit เปนการกําหนดวาผูใชสามารถปอนตัวเลขลงไปไดหรือไม ปกติจะทําได • Increment การเพิ่มหรือลดคาตัวเลขโดยการคลิกปุมลูกศรขึ้น-ลงของ NumericUpDown • ThousandSeparator เปนการกําหนดเครื่องหมายคั่นหลัก (,) เชน 1,001 35,000 • DecimalPlace เปนการกําหนดเลขหลังจุดทศนิยม เชน 1.53 2.45 • UpDownAlign เปนการกําหนดที่จะใหลูกศรอยูดานซายหรือดานขวา • InterceptArrowKeys เปนการกําหนดการใชปุมลูกศรขึ้น-ลงบนคียบอรดเพื่อเพิม่ลดคาของตัวเลขใน

NumericUpDown

ตัวอยางการใช NumericUpDown

1. ออกแบบส วนติดตอกับผูใช (User Interface)

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 10: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 106

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmNumericUpDown 1. Form Text การใช NumericUpDown Name nudYear Minimum 0 Maximum 100

2. NumericUpDown

Value 0 Name lblDay BorderStyle Fixed3D

3. Label

Text Name lblHour BorderStyle Fixed3D

4. Label

Text Name btnOK 5. Button Text OK Name btnExit 6. Button Text Exit

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmNumericUpDown ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click Dim Year As Integer Year = nudYear.Value lblday.Text = Year * 365 lblHour.Text = lblday.Text * 24 End Sub ----------------------------------------------------------------------------------- Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click Me.Close() End Sub ----------------------------------------------------------------------------------- End Class

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 11: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 107

DataTimePicker : เลือกวันที่และเวลา

พร็อพเพอรตีส้ําคัญของ DateTimePicker • Value เปนคาวันเดือนปและเวลาทีไ่ดจากการเลือก • MinDate เปนการกําหนดขอบเขตของวันเดือนปต่ําสุด • MaxDate เปนการกําหนดขอบเขตของวันเดือนปสูงสุด • ShowUpDown เปนการกําหนดการแสดงผลแบบ UpDown หรือ DropDownList แลวแสดงปฏิทิน • Format เปนรูปแบบการแสดงผลวันเดือนปและเวลา ซ่ึงมีรูปแบบดังนี ้

• Long เปนการแสดงวันเดือนปแบบ Long • Short เปนการแสดงวันเดือนปแบบ Short • Time เปนการแสดงเฉพาะเวลา • Custom เปนการแสดงรูปแบบของวนัเวลาตามตองการ

ตัวอยางการใช DateTimePicker

1. ออกแบบส วนติดตอกับผูใช (User Interface)

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmParttime 1. Form Text โปรแกรมคํานวณชัว่โมงการทํางาน Name txtName 2. TextBox Text

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 12: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 108

Name dtpWorkDate 3. DateTimePicker Format Long Name dtpStart Format Time

3. DateTimePicker

ShowUpDown True Name dtpStop Format Time

3. DateTimePicker

ShowUpDown True Name btnOK 6. Button Text OK

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmPartTime ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click Dim fullname, strOut As String Dim hour As Integer fullname = txtname.Text hour = dtpStop.Value.Hour - dtpStart.Value.Hour strOut = "" strOut = strOut & "คุณ " & fullname & vbCrLf

strOut = strOut & "วันที่ " & dtpWorkDate.Value.ToLongDateString & vbCrLf strOut = strOut & "เร่ิมทํางานลวงเวลา = " & dtpStart.Value.ToShortTimeString & vbCrLf strOut = strOut & "สิ้นสุดการทํางานเวลา= " & dtpStop.Value.ToShortTimeString & vbCrLf strOut = strOut & "สรุปทํางานลวงเวลา = " & hour & " ชั่วโมง" & vbCrLf MessageBox.Show(strOut) End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 13: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 109

MonthCalendar : เลือกวันที่จากปฏิทิน พร็อพเพอรตีส้ําคัญของ MonthCalendar • MinDate เปนการกําหนดขอบเขตของวันเดือนปต่ําสุด • MaxDate เปนการกําหนดขอบเขตของวันเดือนปสูงสุด • ShowToday เปนการแสดงวันเดือนปปจจุบันในปฏิทิน • ShowTodayCircle เปนคําส่ังในการเขียนเปนวงกลม หรือส่ีเหล่ียมลอมรอบ ณ วนัที่ปจจุบนัในปฏิทิน • ShowWeekNumber เปนการแสดงเลขที่ของสัปดาห โดยเริ่มนบัสัปดาหแรกของปตั้งแตเดอืนมกราคม • FirstDayOfWeek เปนการกําหนดวันแรกของสัปดาหในปฏทิิน • MaxSelectionCount เปนการกําหนดชวงของจํานวนวันที่สามารถเลือกไดจากปฏิทิน • SelectedRange เปนการระบุชวงของวันทีไ่ดเลือก โดยจะประกอบดวยวันที่เร่ิมตนและวนัที่ส้ินสุด • CalendarDimension เปนการกําหนดจํานวนหนาในปฏิทินที่จะแสดงผล โดยกาํหนดจํานวนหนาในดานกวาง

และจํานวนหนาในดานสูง

ตัวอยางการใชงาน MonthCalendar

1. ออกแบบส วนติดตอกับผูใช (User Interface)

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 14: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 110

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmMonthCalendar 1. Form Text การใช MonthCalendar Name txtName 2. TextBox Text

3. ListBox Name lstBranch Name mnc1 MinDate 1 เมษายน 2550 MaxSelectionCount 5

4. MonthCalendar

ShowToday True Name btnOK 5. Button Text OK Name btnClear 6. Button Text Clear

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmMonthCalendar ----------------------------------------------------------------------------------- Private Sub frmMonthCalendar_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

lstBranch.Items.Add("คอมพิวเตอรธุรกิจ") lstBranch.Items.Add("การบริหารทรัพยากรมนุษย") lstBranch.Items.Add("การบัญชี") lstBranch.Items.Add("การตลาด") lstBranch.Items.Add("เศรษฐศาสตรธุรกิจ") End Sub ----------------------------------------------------------------------------------- Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click txtName.Text = "" lstBranch.ClearSelected() mnc1.SelectionStart = mnc1.TodayDate mnc1.SelectionEnd = mnc1.TodayDate End Sub

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 15: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 111

Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click Dim strOut As String strOut = ""

strOut = strOut & "ช่ือ-นามสกุล : " & txtName.Text & vbCrLf strOut = strOut & "สาขาวิชา : " & lstBranch.Items(lstBranch.SelectedIndex).ToString & vbCrLf

strOut = strOut & "ลาพักรอนตั้งแตวันที่ : " & mnc1.SelectionStart.ToLongDateString strOut = strOut & " ถึง " & mnc1.SelectionEnd.ToLongDateString MessageBox.Show(strOut) End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 16: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 112

MaskedTextBox : ปอนขอมูลตามรูปแบบที่กําหนด เพื่อลดความผิดพลาดในการ

ปอนขอมูล โดยเฉพาะรับขอมูลที่ตายตัวเชน เบอรโทรศัพท หรือวันเดือนป เปนตน พร็อพเพอรตีส้ําคัญของ MaskedTextBox • Mark เปนการกําหนดรูปแบบของการกรอกขอมลู ซ่ึงมีขั้นตอนการกําหนด ดังนี ้

ในการกําหนดรูปแบบมีการใชสัญลักษณเพือ่กําหนดรูปแบบ ดังนี ้ สัญลักษณสําคัญ คําอธิบาย

0 แทนเลข 0 ถึง 9 บังคับใหใสขอมูล และไมสามารถใสสัญลักษณ + หรือ - ได 9 แทนตวัเลข หรือชองวาง ไมบังคับใหใสขอมูล และไมสามารถใสสัญลักษณ + หรือ – ได # แทนตวัเลข หรือชองวาง ไมบังคับใหใสขอมูล และสามารถใสสัญลักษณ + หรือ – ได L แทนตวัอักษร บังคับใหใสขอมูล ? แทนตวัอักษร จะใสขอมูลหรือไมก็ได A แทนตวัเลขหรอืตัวอักษร บังคับใหใสขอมลู a แทนตวัเลขหรอืตัวอักษร จะใสขอมูลหรือไมก็ได & แทนตวัเลข ตัวอักษร เครื่องหมายพเิศษ และชองวาง บังคับใหใสขอมูล C แทนตวัเลข ตัวอักษร เครื่องหมายพเิศษ และชองวาง จะใสขอมูลหรือไมก็ได < กําหนดใหตัวอักษรอังกฤษทั้งหมด เปนตวัพิมพเล็ก > กําหนดใหตัวอักษรอังกฤษทั้งหมด เปนตวัพิมพใหญ \ แทนการใสขอความ ตัวอักษรหรือตัวเลขอื่น ๆ ที่เปน สัญลักษณสําคญั โดยจะใชเครื่องหมาย \ ตัวท่ี

เปนสัญลักษณสําคัญ เชน ตองการใส & ลงไป จะตองกําหนด \& เปนตน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 17: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 113

• Text เฉพาะขอความที่กรอกใหกบัคอลโทรล • TextMaskFormat เลือกรูปแบบขอความที่จะเกบ็วาจะรวมเอาสัญลักษณตาง ๆ ที่ถูกกําหนดตามรูปแบบ

ของพร็อพเพอรตี้ Mask เขาไปดวย และ/หรือ Prompt ไปดวยหรือไม ปกติจะรวมไปดวย • PromptChar ตัวอักษรที่เปน Prompt (ปกติคือ ขีดลาง หรือ Underscore) • AsciiOnly ตองการจะรับขอมูลเฉพาะรหัส Ascii หรือไม • BeepOnError จะใหมีเสียงปบเตือนเมื่อผูใชงานกรอกผิดรูปแบบหรือไม • Culture เปนการระบวุาจะมี Prompt ที่เปนสัญลักษณในภาษาทองถ่ินดวยหรือไม

ตัวอยางการใช MaskedTextBox 1. ออกแบบส วนติดตอกับผูใช (User Interface)

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmMonthCalendar 1. Form Text การใช MonthCalendar Name mtbPhone 2. MaskedTextBox Mask 0-0000-0000 Ext 9999 Name mtbBirthday 3. MaskedTextBox Mask 00/00/0000 Name mtbID 4. MaskedTextBox Mask 0 0000 00000 00 0

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 18: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 114

Name mtbCar 5. MaskedTextBox Mask LL-9990 Name btnOK 6. Button Text OK Name btnClear 7. Button Text Clear

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmMaskedTextBox ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click Dim strOut As String strOut = ""

strOut = strOut & "เบอรโทรศัพท : " & mtbPhone.Text & vbCrLf strOut = strOut & "วันเกิด : " & mtbBirthday.Text & vbCrLf strOut = strOut & "รหัสประจําตัวประชาชน 13 หลัก : " & mtbID.Text & vbCrLf strOut = strOut & "ทะเบียนรถยนต : " & mtbCar.Text & vbCrLf MessageBox.Show(strOut) End Sub ----------------------------------------------------------------------------------- Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click mtbPhone.Text = "" mtbBirthday.Text = "" mtbID.Text = "" mtbCar.Text = "" End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 19: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 115

TabControl : การแบงสวนการทํางาน เปนการแบงงานออกกลุม ๆ โดยใชพืน้ที่

เดียวกัน ตัวอยางเชน

พร็อพเพอรตีส้ําคัญของ TabControl • Multipleline เปนการอนุญาตใหสามารถแสดงแท็บไดหลายบรรทัด ถาหากความกวางของคอลโทรล

TabControl ไมพอที่จะบรรจุทุกแท็บไวได แตปกตกิําหนดเปน False คือ แสดงแทบ็ในบรรทัดเดียว โดยจะใชปุมลูกศรซายชวาในการบอกวายงัมีแท็บที่ซอนอยูในกรณีที่มีพื้นที่ไมพอ

• SizeMode เปนการระบุความกวางของแท็บ โดยปกติจะใชความกวางตามความยาวของขอความในแท็บ • TabPages เปนคอลเล็คชันที่ใชเก็บขอมูลของแตละแท็บเอาไว ซ่ึงมีคุณสมบัติที่สําคัญ ดังนี้

• Text เปนขอความทีแ่สดงบนแท็บ • ToolTipText เปนขอความแนะนําทีแ่สดงขึ้นมาตอนเอาเมาสไปวางชี้ทีแ่ท็บ

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 20: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 116

ตัวอยางการใช TabControl 1. ออกแบบสวนติดตอกับผูใช (User Interface)

14

11

12

13

2. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmTabControl 1. Form Text การใช TabControl

2. TabControl Name TabControl1 Name TabPage1 3. TabPage Text ขอมูลสวนตัว Name TabControl2 4. TabPage Text การศึกษา Name TabControl3 5. TabPage Text คติเตือนใจ

6. TextBox Name txtName 7. DateTimePicker Name dtpBirthday

Name txtAddress Multiline True

8. TextBox

ScrollBar Both Name mtbPhone 9. MaskedTextBox Masked 0-000-0000 Name Grb1 10. GroupBox Text วุฒิการศึกษา

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 21: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 117

Name Grb2 11. GroupBox Text คณะ

12. TextBox Name txtBranch Name txtMoral Miltiline True

13. TextBox

ScrollBat Both Name btnOK 14. Button Text OK

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmTabControl Dim level, faculty As String ----------------------------------------------------------------------------------- Private Sub rad1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad1.CheckedChanged level = " ปริญญาตร ี" End Sub ----------------------------------------------------------------------------------- Private Sub rad2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad2.CheckedChanged level = " ปริญญาโท " End Sub ----------------------------------------------------------------------------------- Private Sub rad3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad3.CheckedChanged level = " ปริญญาเอก" End Sub ----------------------------------------------------------------------------------- Private Sub rad4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad4.CheckedChanged faculty = " วิทยาศาสตร " End Sub ----------------------------------------------------------------------------------- Private Sub rad5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad5.CheckedChanged faculty = " บริหารธุรกิจ " End Sub ----------------------------------------------------------------------------------- Private Sub rad6_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad6.CheckedChanged faculty = " ครศุาสตร " End Sub ----------------------------------------------------------------------------------- Private Sub rad7_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad7.CheckedChanged faculty = " ศิลปะศาสตร " End Sub ----------------------------------------------------------------------------------- Private Sub rad8_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad8.CheckedChanged faculty = " นิติศาสตร " End Sub

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 22: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 118

Private Sub rad9_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rad9.CheckedChanged faculty = " รัฐประศาสนศาสตร " End Sub ----------------------------------------------------------------------------------- Private Sub btnOK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOK.Click Dim StrOut As String StrOut = "" StrOut = StrOut & "คุณ" & txtName.Text & vbCrLf StrOut = StrOut & "เกิดวันที ่" & dtpBirthday.Value.ToLongDateString & vbCrLf StrOut = StrOut & "ที่อยู " & txtAddress.Text & vbCrLf StrOut = StrOut & "เบอรโทรศัพท " & mtbPhone.Text & vbCrLf StrOut = StrOut & "- - - - - - - - - - - - - - - - - - - - - - - " & vbCrLf StrOut = StrOut & "ระดบัการศึกษา " & level & vbCrLf StrOut = StrOut & "คณะ " & faculty & vbCrLf StrOut = StrOut & "สาขา " & txtbranch.Text & vbCrLf StrOut = StrOut & "- - - - - - - - - - - - - - - - - - - - - - - " & vbCrLf StrOut = StrOut & "คติเตือนใจ " & txtmoral.Text & vbCrLf MessageBox.Show(StrOut) End Sub ----------------------------------------------------------------------------------- End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 23: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 119

WebBrowser : การสรางเว็บบราวเซอร พร็อพเพอรตีส้ําคัญของ WebBrowser • URL เปน URL ที่ตองการใหคอลโทรล WebBrowser แสดงผล

• ScrollBarsEnabled เปนการระบจุะแสดง ScollBar เมื่อพื้นทีแ่สดงผลไมเพยีงพอ (ปกติกาํหนดเปน True)

• Document จะเปนการรีเทริน Document Object ของเว็บเพจนั้น

• DocumentTitle เปนการแสดง Title ของเว็บเพจปจจุบนั เมธอดสําคัญของ WebBrowser

• Navigate เปนการแสดงเว็บเพจทีเ่ราตองการ โดยการระบุ URL กับเมธอดนี้

• GoForward เปนการแสดงผลเว็บเพจหนาถัดไป

• GoBack เปนการแสดงผลเว็บเพจที่ผานมา

• GoHome เปนการแสดงผลเว็บเพจ HomePage ที่กําหนดไวใน Internet Option ของ Control Panel

• GoSearch เปนการแสดงผลเว็บเพจ Search Page ที่กําหนดไวใน Internet Option ของ Control Panel

• Refresh เปนการแสดงผลเว็บเพจใหมอีกครั้งเพื่อใหไดขอมูลที่ทนัสมัยที่สุด

• Stop เปนการหยุดการรับขอมูล

• Print เปนการสั่งใหพิมพเว็บเพจปจจับันออกทางเครื่องพิมพ อีเวนตท่ีสําคญัของ WebBrowser

• Navigating เปนเหตกุารณที่เกิดกอนที่การ Navigate จะเริ่มขึ้น ซ่ึงชวยใหสามารถยกเลิกการทํางานได

• Navigated เปนเหตกุารณที่อยูระหวางการ Navigate คือ การเริ่มโหลด Document ตัวใหม

• DocumentComplete เปนเหตกุารณที่เกิดเมื่อเว็บเพจตัวใหมถูกโหลดมาเรียบรอยแลว

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 24: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 120

ตัวอยางการใช WebBrowser 1. ออกแบบสวนติดตอกับผูใช (User Interface)

3. กําหนดคุณสมบัติของออบเจ็ค (Object Properties)

ออบเจ็ค พร็อพเพอรตี ้ คาที่กําหนด Name frmWebBrowser 1. Form Text ตัวอยางการใช Web Browser Name txtURL 2. TextBox Anchor Top, Left, Right Name btnGo 3. Button Text Go Name btnBack 4. Button Text Back Name btnForward 5. Button Text Forward Name btnHome 6. Button Text Home Name btnSearch 7. Button Text Search Name btnPrint 8. Button Text Print Name WebBrowser1 9. WebBrowser Anchor Top, Bottom, Left, Right

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 25: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 121

3. การเขียนชดุคําสัง่ (Source Code) Public Class frmWebBrowser Private Sub btnGo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGo.Click If txtURL.Text = "" Then MessageBox.Show("คุณตองระบ ุAddress กอน", "ผิดพลาด") Exit Sub End If WebBrowser1.Navigate(txtURL.Text) End Sub Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted Me.Cursor = Cursors.Default End Sub Private Sub WebBrowser1_Navigated(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatedEventArgs) Handles WebBrowser1.Navigated Me.Cursor = Cursors.WaitCursor End Sub Private Sub btnBack_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBack.Click WebBrowser1.GoBack() End Sub Private Sub btnForward_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnForward.Click WebBrowser1.GoForward() End Sub Private Sub btnHome_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHome.Click WebBrowser1.GoHome() End Sub Private Sub btnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSearch.Click WebBrowser1.GoSearch() End Sub Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click WebBrowser1.Print() End Sub End Class

4. ผลลัพธจากการรัน

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 26: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 122

การใชเมนูใหกับแอพพลเิคชั่น รูปแบบหนึ่งทีช่วยใหการใชงานแอพพลิเคชั่นดูงาย ประหยัดเนื้อทีแ่สดงผล และนาใชงาน คือ การใชเมนู ซ่ึงสามารถเพิ่มเมนูใหแอพพลิเคชั่นได สําหรับเมนูที่เราใชงานแบงไดเปน 2 แบบ คือ • Pull Down Menu พูลดาวนเมนู เปนเมนูที่มีตําแหนงแนนอน ซ่ึงปกติเรามักเห็นพูลดาวนเมนูในตอนบนของ

แอพพลิเคชั่น • PopUp Menu ปอปอัพเมนู เปนเมนูที่มีตําแหนงไมแนนอน ปกติมักจะเกดิตอนที่เราคลิกขวาในพืน้ที่ของ

แอพพลิเคชั่น

Show Desktop.scf

Pull Down Menu

PopUp Menu

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 27: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 123

องคประกอบของเมน ู

เมนูบาร

เมนูไอเท็ม

เสนคั่น คียลัด

เมนูยอย

• เมนูบาร (Menu Bar) เปนแถบหลักของเมนูหลัก ซ่ึงจะอยูติดกับแถบบนของฟอรม

• เมนูไอเท็ม (Menu Item) เปนรายการแตละตัวของเมน ู

• เสนคั่น (Separation) เปนเสนคั่นระหวางเมนูไอเท็ม

• เมนูยอยหรือซับเมน ู(Sun Menu) เปนเมนยูอยที่อยูภายในเมนูไอเท็ม

• คียลัด (Shortcut) เปนการลดเวลาการเขาถึงเมนูดวยการกดคียบอรดเพียงครั้งเดยีว

MenuStrip : การสรางเมนู มีขั้นตอนการใชดังนี ้1. Double Click ที่ MenuStrip

Double Click แสดง MenuStrip

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 28: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 124

2. คลิกที่ MenuStrip ในชองที่มีคําวา TypeHere แลวปอนขอความเขาไปซึ่งจะเปนเมนูไอเท็มบนเมนูบาร ในทีน่ี้ปอน &File ลงไป 3. สรางเมนูยอย New 4. สรางเมนูยอย Open 5. สรางเมนูยอย เสนคั่น

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 29: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 125

6. สรางเมนูยอย Save 7. สรางเมนูยอย Save 8. สรางเมนู Edit โดยมีเมนูยอยดังภาพ 9. สรางเมนู Windows โดยมีเมนยูอยดงัภาพ

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 30: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 126

การสราง PopUp Menu ดวย ContextMenuStrip

ในการใชงานแอพพลิเคชั่นจริง เราคงเคยใชงานปอปอพัเมนู (PopUp Menu) ซ่ึงเกดิจากการคลิกขวาภายในพื้นที่ที่เราตองการ เราจะไดเมนูปรากฏขึ้นมา จากนั้นเราก็เลือกไอเท็มที่เราตองการ

ใน VB 2005 จะใช ContextMenuStrip ในการสรางเมนูไอเท็มภายใตเหมือนกนัเมนเมนู โดยในฟอรมหนึ่ง ๆ สามารถมี ContextMenuStrip ไดหลายตวั ซ่ึงมีขั้นตอนการสราง ดังนี้

1. ดับเบิ้ลคลิก (Double Click) ที่

2. สรางเมนูไอเท็มของ ContectMenuStrip ซ่ึงการสรางเหมือนกับ MenuStrip ดังภาพ

mnuRed mnuBlue

mnuYellow

3. เขียนชุดคําสั่ง ดังนี้ Public Class test ----------------------------------------------------------------------- Private Sub mnuRed_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuRed.Click Me.BackColor = Color.Red End Sub ----------------------------------------------------------------------- Private Sub mnuBlue_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuBlue.Click Me.BackColor = Color.Blue End Sub ----------------------------------------------------------------------- Private Sub mnuYellow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuYellow.Click Me.BackColor = Color.Yellow End Sub ----------------------------------------------------------------------- End Class

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 31: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 127

4. ผลการรันโปรแกรม หลังจากคลิกเมาสปุมขวาจะปรากฏเมนูขึ้นมา

การสรางแอพพลิเคชั่นดวยฟอรมมากกวา 1 ฟอรม มีการใชงานอยู 2 ลักษณะ 1. แอพพลิเคชั่นแบบ MDI แอพพลิเคชั่นแบบนี้จะมฟีอรมหลักและฟอรมลูก โดยฟอรมลูกจะตองอยูในฟอรมหลัก

เสมอ เชน Microsoft Word หรือ Microsoft Excel เปนตน สังเกตวาแอพพลิเคชั่นแบบนีจ้ะมเีมนูแบบ Pull Down ซ่ึงจะมีเมนูไอเท็มที่เปน Window ไวดวย เพื่อใหเลือกใชงานฟอรมลูกแตละตัว

2. แอพพลิเคชั่นหลายฟอรมแบบ Non MDI แอพพลิเคชั่นแบบนีจ้ะมฟีอรมหลักที่โหลดเปนฟอรมแรก จากนั้นจะเรียกฟอรมลูกอ่ืน ๆ มาใชงาน ซ่ึงฟอรมหลักและฟอรมลูกจะอิสระจากกัน

แอพพลิเคชั่นแบบ MDI Visual Basic สนับสนุนการสรางแอพพลิเคชั่นโดยใช MDI (Multiple Document Interface) ซ่ึงในแอพพลิเคชั่นแบบนี้เราแบงฟอรมได 2 ลักษณะ ไดแก • Parent Form เปนฟอรมหลักที่บรรจุฟอรมลูกไวภายใน ซ่ึงในแอพพลิเคชั่นตองมีไดเพยีงแคฟอรมเดียว • Child Form เรียกอีกอยางวาฟอรมลูก เปนฟอรมที่บรรจุอยูภายในฟอรมหลัก ซ่ึงสามารถยอขยายและจดัการให

อยูภายใน MDI Workspace ของฟอรมหลัก

MDI Form หรือ Parent Form

MDI Work Space

Minimize Child Form

Child Form

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 32: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 128

แอพพลิเคชั่นแบบ Non MDI

ขั้นตอนการสรางแอพพลิเคชั่นแบบ MDI 1. คลิกเมนู Project >> Add Windows Form 2. Double Click 3. จะไดฟอรมใหมขึ้นมา แลวทําการกําหนดคุณสมบัติของ IsMdiContainer เปน True ดังภาพ

ลักษณะของฟอรมหลังจากกําหนดคณุสมบัติของ

IsMdiContainer เปน True

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 33: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 129

4. สรางเมนูโดยใช MenuStrip แลวทําการสรางเมนูหลัก Open และ Windows ดังภาพ

MenuCircle

MenuSquare

MenuTriangle

MenuArrangeIcon

MenuCascade

MenuTitle

5. การเขียนชดุคําส่ัง (Source Code) Public Class frmMDI ------------------------------------------------------------------------------ Private Sub menuTriangle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuTriangle.Click frmTriangle.MdiParent = Me frmTriangle.Show() End Sub ------------------------------------------------------------------------------ Private Sub menuSquare_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuSquare.Click frmSquare.MdiParent = Me frmSquare.Show() End Sub ------------------------------------------------------------------------------ Private Sub menuCircle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuCircle.Click frmCircle.MdiParent = Me frmCircle.Show() End Sub ------------------------------------------------------------------------------ Private Sub menuTitle_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuTitle.Click Me.LayoutMdi(MdiLayout.TileHorizontal) End Sub ------------------------------------------------------------------------------ Private Sub menuCascade_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuCascade.Click Me.LayoutMdi(MdiLayout.Cascade) End Sub ------------------------------------------------------------------------------ Private Sub menuArrangeIcon_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles menuArrangeIcon.Click Me.LayoutMdi(MdiLayout.ArrangeIcons) End Sub ------------------------------------------------------------------------------ End Class

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 34: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 130

6. ผลการรันโปรแกรม

การใชงานคอลโทรล ToolStrip 1. คลิกเมนู Project >> Add Windows Form 2. Double Click

3. Double Click

3. Double Click

4. เพิ่มคอลโทรล ToolStrip โดยการคลิก ดังภาพ

5. เลือกคอลโทรลที่ตองการเพิ่มเขามาในทูลบาร ดังภาพ

4. คลิกเพื่อเลือกคอลโทรล

5. เลือกคอลโทรล

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 35: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 131

สามารถเลือกรูปแบบที่ตองการแสดงผลบนแถบทูลบารไดหลายรูปแบบ ดังนี ้

• Button เปนปุมอยูบนทูลบารสามารถใสขอความ และรูปบนปุมได

• Label เปนแถบขอความที่อยูบนทลูบาร

• Split Button เปนปุมที่ผสมกันระหวาง Button และ DropDownButton

• DropDownButton เปนปุมที่สามารถมีเมนูไอเท็มยอย ๆ ที่อยูภายใตปุมนั้นดวย

• Separator เปนตัวแยกหมวดหมูของคอลโทรลที่อยูบนทูลบาร คลายกับตวัแยกในเมนูไอเท็ม

• ComboBox เปนรายการตวัเลือกที่พรอมใหเลือกจากรายการ หรือปอนขอความเขาไป เชนเดยีวกับ คอลโทรล ComboBox

• TextBox เปนชองรับขอความที่อยูบนทูลบาร

• ProgressBar เปนแถบแสดงความคืบหนาของงานที่อยูบนทูลบาร เชนเดียวกับคอลโทรล ProgressBar

6. เลือก Button

6. คลิก

7. คลิกเมาสปุมขวาที่ Button แลวเลือกเมนู เพื่อเลือกรูปภาพ

7.3 คลิก

7.6 คลิก

7.1 คลิกเมาสปุม

7.2 เลือก

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 36: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 132

7.5 คลิก

7.4 เลือกรูปภาพที่ตองการ

8. กําหนดคุณสมบัติของ Button ดังนี ้ 9. เพิ่มคอลโทรล Button ซ่ึงกําหนดคณุสมบัติ ดังนี ้ 10. เพิ่มคอลโทรล Button ซ่ึงกําหนดคณุสมบัติ ดังนี ้

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005

Page 37: ListBox : รายการข ูลอม เป นรายการข ูอมี่ลท อมใหพร เราเลื€¦ · เมธอดสํัาคญของ

เอกสารประกอบการสอน อ.ธรรมรัตน สิมะโรจนา 133

11. การเขียนชดุคําส่ัง (Source Code) Public Class frmtoolStrip ----------------------------------------------------------------------- Private Sub ToolStripBtn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBtn1.Click frmTriangle.MdiParent = Me frmTriangle.Show() End Sub ----------------------------------------------------------------------- Private Sub ToolStripBtn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBtn2.Click frmSquare.MdiParent = Me frmSquare.Show() End Sub ----------------------------------------------------------------------- Private Sub ToolStripBtn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripBtn3.Click frmCircle.MdiParent = Me frmCircle.Show() End Sub ----------------------------------------------------------------------- End Class

12. ผลการรันโปรแกรม

วิชา การเขียนโปรแกรมภาษาคอมพิวเตอรช้ันสูง Microsoft Visual Basic 2005