ในการเขียน VBA จำเป็นต้องทราบถึงคอนโทรลมาตรฐาน (Standard Toolbox Controls) ที่เป็นองค์ประกอบสำคัญของการพัฒนาโปรแกรม ในบทนี้จะได้ทำความรู้จักคอนโทรลพื้นฐานต่างๆ ที่นำมาสร้างเป็นส่วนประกอบบนฟอร์ม โดยคอนโทรลจะมีองค์ประกอบที่สำคัญ 3 อย่างคือ
1. Property คือคุณสมบัติของคอนโทรล เช่น ขนาดความกว้าง ความสูง สีพื้น ขนาดตัวอักษร เป็นต้น
2. Method คือ ที่คอนโทรลนั้นสามารถทำได้ เช่น การ Copy Cut Paste เป็นต้น
3. Event คือ เหตุการณ์ที่เกิดขึ้นกับคอนโทรล เพื่อสั่งให้โปรแกรมในคอนโทรลนั้นๆ ทำงาน เช่น การคลิก การดับเบิ้ลคลิก การกดปุ่ม Enter เป็นต้น
ใช้สำหรับเลือกคอนโทรล ในกล่องเครื่องมือ Toolbox หรือใช้ในการปรับแต่งขนาดหรือเคลื่อนย้ายคอนโทรลที่วาดไว้บนฟอร์ม (form)
ตัวอย่างที่ 1 การใช้งาน Select Objects เพื่อสร้าง Label1 บนฟอร์ม
1. เปิดโปรแกรมเอ็กเซลล์
2. เปิดหน้าต่าง Visual Basic Editor โดยที่เมนูบาร์คลิก Tools>Macro> Visual Basic Editor
3. เมื่อหน้าจอ Visual Basic Editor ปรากฏขึ้น ให้คลิกเลือก Insert > UserForm
4. UserForm1 จะปรากฏขึ้น ให้ปรับขนาดตามต้องการโดยการคลิกลากส่วนขอบของ UserForm1 หรืออาจกำหนดขนาดในหน้าต่างพร็อพเพอร์ตี้ก็ได้
5. คลิกเลือก Label1 ที่ ToolBox แล้วนำมาวาดบนฟอร์ม
6. การนำ Label1 มาวาดบนฟอร์โดยการคลิกลงบนฟอร์ม และลากเมาส์ลงมาทางมุมขวาล่าง เพื่อให้ได้ขนาดที่ต้องการ
7. เมื่อได้ขนาดที่ต้องการแล้ว ให้ปล่อยเม้าส์จะได้ Label1 บนฟอร์ม และให้สังเกตุว่า Select Objects จะถูกเลือกโดยอัตโนมัติ เพื่อรอให้นำไปปรับแต่ง ตำแหน่ง หรือขนาดของคอนโทรล ให้เหมาะสมตามต้องการ จากรูปด้านล่างจะเป็นการใช้ Select Objects ปรับขนาดของ Label1 ที่กรอบด้านล่าง ให้มีขนาดกว้างขึ้น
2.Label
คอนโทรล Label ใช้ในการทำป้ายชื่อหรือแสดงข้อความ ซึ่งการป้อนข้อความสามารถกระทำได้โดยตรงบนตัว control หรือที่พร็อพเพอร์ตี้ caption ก็ได้
คอนโทรล Label ใช้ในการทำป้ายชื่อหรือแสดงข้อความ ซึ่งการป้อนข้อความสามารถกระทำได้โดยตรงบนตัว control หรือที่พร็อพเพอร์ตี้ caption ก็ได้
คุณสมบัติ (propertis) ที่สำคัญของ Label
Name ใช้สำหรับกำหนดชื่อของคอนโทรล
AutoSize ใช้สำหรับกำหนดขนาดของ Label ให้มีขนาดพอดีกับข้อมูลโดยอัตโนมัติ
BackColor ใช้สำหรับกำหนดสีพื้น หลัง
BackStyle ใช้สำหรับกำหนดรูปแบบของพื้นหลังให้เป็นแบบทึบหรือโปร่งใส
BorderStyle ใช้สำหรับกำหนดรูปแบบของเส้นขอบ
Caption ใช้สำหรับกำหนดข้อความ
Enabled ใช้สำหรับกำหนดให้คอนโทรลสามารถใช้งานได้
Font ใช้สำหรับกำหนดรูปแบบตัวอักษร
ForeColor ใช้สำหรับกำหนดสีตัวอักษร
Visible ใช้สำหรับกำหนดให้ซ่อนหรือแสดง Label
เหตุการณ์ (Event) ที่สำคัญของ Label
Click เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการคลิกที่คอนโทรล
DblClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ ดับเบิ้ลคลิกที่คอนโทรล
MouseDown เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ลงผ่าน คอนโทรล
MouseUp เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ขึ้นผ่าน คอนโทรล
3.TextBox
ใช้ในการใส่ข้อมูลทั้งตัวอักษรและตัวเลข ที่ผู้ใช้สามารถเปลี่ยนค่าได้
Name ใช้สำหรับกำหนดชื่อของคอนโทรล
AutoSize ใช้สำหรับกำหนดขนาดของ Label ให้มีขนาดพอดีกับข้อมูลโดยอัตโนมัติ
BackColor ใช้สำหรับกำหนดสีพื้น หลัง
BackStyle ใช้สำหรับกำหนดรูปแบบของพื้นหลังให้เป็นแบบทึบหรือโปร่งใส
BorderStyle ใช้สำหรับกำหนดรูปแบบของเส้นขอบ
Caption ใช้สำหรับกำหนดข้อความ
Enabled ใช้สำหรับกำหนดให้คอนโทรลสามารถใช้งานได้
Font ใช้สำหรับกำหนดรูปแบบตัวอักษร
ForeColor ใช้สำหรับกำหนดสีตัวอักษร
Visible ใช้สำหรับกำหนดให้ซ่อนหรือแสดง Label
เหตุการณ์ (Event) ที่สำคัญของ Label
Click เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการคลิกที่คอนโทรล
DblClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการ ดับเบิ้ลคลิกที่คอนโทรล
MouseDown เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ลงผ่าน คอนโทรล
MouseUp เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ขึ้นผ่าน คอนโทรล
3.TextBox
ใช้ในการใส่ข้อมูลทั้งตัวอักษรและตัวเลข ที่ผู้ใช้สามารถเปลี่ยนค่าได้
คุณสมบัติ (properties) ที่สำคัญของ TextBox
Name ใช้สำหรับกำหนดชื่อของคอนโทรล
BackColor ใช้สำหรับกำหนดสีพื้น
BorderStyle ใช้สำหรับกำหนดรูปแบบของเส้นขอบ
Enabled ใช้สำหรับกำหนดให้คอนโทรลสามารถใช้งานได้
Font ใช้สำหรับกำหนดรูปแบบตัวอักษร
ForeColor ใช้สำหรับกำหนดสีตัวอักษร
Locked ใช้สำหรับกำหนดให้คอนโทรล ไม่สามารถใช้งานได้
MaxLength ใช้สำหรับกำหนดความยาวของข้อมูลตัวอักษรที่สามารถพิมพ์ได้
MultiLine ใช้สำหรับกำหนดให้ TextBox สามารถพิมพ์ได้หลายบรรทัด
PasswordChar ใช้สำหรับกำหนดตัวอักษรที่ต้องการให้แสดงขณะที่พิมพ์
TabIndex ใช้สำหรับกำหนดลำดับของ Control ที่ใช้ใน Form
Text ใช้สำหรับกำหนดข้อความใน TextBox
Value ใช้สำหรับระบุสถานะหรือกำหนดข้อมูลให้กับคอนโทรล
Visible ใช้สำหรับกำหนดให้ซ่อนหรือแสดง TextBox
เมธอดที่สำคัญของ TextBox
Copy เป็นคำสั่งคัดลอกข้อมูลจากคอนโทรล
Cut เป็นคำสั่งนำข้อมูลออกจากคอนโทรล
Paste เป็นคำสั่งถ่ายโอนข้อมูลมาไว้ที่คอนโทรล
เหตุการณ์ (Event) ที่สำคัญของ TextBox
Change เป็นเหตุการณ์ที่เกิดขึ้นเมื่อข้อมูลของ TextBox มีการเปลี่ยนแปลง
DblClick เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการดับเบิ้ลคลิกที่คอนโทรล
Enter เป็นเหตุการณืที่เกิดขึ้นเมื่อมีการกดปุ่ม Enter
KeyPress เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการกดปุ่มใด ๆ บนคีย์บอร์ด
MouseDown เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ลงผ่าน คอนโทรล
MouseUp เป็นเหตุการณ์ที่เกิดขึ้นเมื่อมีการเคลื่อนเมาส์ขึ้นผ่าน คอนโทรล
ตัวอย่างที่ 2 การสร้างฟอร์มที่ประกอบด้วยคอนโทรล Label และ TextBox
1. เปิดโปรแกรมเอ็กเซลล์
2. เปิดหน้าต่าง Visual Basic Editor โดยที่เมนูบาร์คลิก Tools>Macro> Visual Basic Editor
3. เมื่อหน้าจอ Visual Basic Editor ปรากฏขึ้น ให้คลิกเลือก Insert > UserForm
4. UserForm1 จะปรากฏขึ้น ให้ปรับขนาดตามต้องการโดยการคลิกลากส่วนขอบของ UserForm1 หรืออาจกำหนดขนาดในหน้าต่างพร็อพเพอร์ตี้ก็ได้
5. ใส่ Label1 เพื่อเป็นป้ายชื่อกำกับ หรือใส่คำอธิบาย โดยในกล่องเครื่องมือ Toolbox คลิกที่คอนโทรล Label แล้วนำไปวางบน Userform1
6. ใส่ Label2 เพื่อใช้แสดงค่าที่พิมพ์จาก Textbox1
7. ใส่ TextBox1 เพื่อป้อนค่าหรือพิมพ์ตัวอักษร
8. จะได้ Userform1 ที่ประกอบด้วยคอนโทรลต่างๆ ดังรูป
9. กำหนดค่าคุณสมบัติ (property) ให้แต่ละคอนโทรลดังนี้
คอนโทรล พร็อพเพอร์ตี้ ค่าที่กำหนด
UserForm1 Caption LABEL AND TEXT
Height 197
Width 300
Label1 Caption Please type some text
Height 24
Width 240
Label2 Caption -
BorderStyle 1-fmBorderStyleSingle
Height 42
Width 240
TextBox1 Height 25
Width 240
10. เมื่อใส่ค่าพร็อพเพอร์ตี้ที่กำหนดแล้วจะได้ UserForm1ดังนี้
คอนโทรล พร็อพเพอร์ตี้ ค่าที่กำหนด
UserForm1 Caption LABEL AND TEXT
Height 197
Width 300
Label1 Caption Please type some text
Height 24
Width 240
Label2 Caption -
BorderStyle 1-fmBorderStyleSingle
Height 42
Width 240
TextBox1 Height 25
Width 240
10. เมื่อใส่ค่าพร็อพเพอร์ตี้ที่กำหนดแล้วจะได้ UserForm1ดังนี้
MessageBox คือ คำ Class ของภาษา C# มีไว้สำหรับการแสดง Message Box หรือหน้าต่างข้อความในรูปแบบต่าง ๆ ซึ่งสามารถใช้งานได้บน Windows Forms Application
ภาพรวมของ MessageBox
1. ใช้คำสั่ง MessageBox.show() ในการแสดงหน้าต่างข้อความ
2. สามารถส่งค่า Parameter ได้หลายรูปแบบสำหรับการสร้างหน้าตา และเงื่อนไขของ MessageBox
ตัวอย่างโปรแกรม
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load( object sender, EventArgs e) { MessageBox.Show( "Hello, AmplySoft" , "Title MessageBox" , MessageBoxButtons.YesNo, MessageBoxIcon.Information); } } } |
ผลลัพธ์
ไม่มีความคิดเห็น:
แสดงความคิดเห็น