การทำงานด้านกราฟฟิก
Visual Basic มีเมธอดทางกราฟฟิก จำนวนมาก ในการวาดจุดและเส้นรวมทั้งรูปทรงการเรขาคณิต เช่น สีเหลี่ยม วงกลม และวงรี ที่สามารถควบคุมสี ความหนา และรูปแบบ รวมถึงการเติมให้รูปทรงเป็นสี หรือลวดลาย
การวาดจุด
เมธอดที่ใช้ประโยชน์มากคือ PSet ซึ่งใช้ปรับปรุงสีของพิกเซลเดียวบนฟอร์ม ไวยากรณ์ พื้นฐาน คือ PSet
PSet [Step] (x,y) [, color]
(x,y) คือพิกัด x และ y พิกัด x, y สามารถละได้ โดย Visual Basic จะวาดที่พิกัดปัจจุบัน
color เป็นสีของพิกเซลแตกต่างจาก ForeColor ซึ่ง color สามารถละได้เช่นกัน
Forecolor = VbRed
PSet(0, 0) ' จุดเป็นสีแดง
PSet(10,0) ,vbcyan ' จุดเป็นสีฟ้า (cyan)
การวาดเส้นและสี่เหลี่ยม
การเส้นใช้เมธอด Line ซึ่งสามารถประยุกต์เป็นการวาดเส้นตรง สี่เหลี่ยมว่าง และสี่เหลี่ยมเติมสี ซึ่งมีไวยากรณ์
[Object.]Line [(x1, y1)] - (x2, y2) [, color] [,b] [,f]
Object เป็นตัวเลือก ถ้าละไว้การวาดลงบนฟอร์มปัจจุบันที่เก็บคำสั่ง
พิกัด x, y แรก (x1, y1) ละได้ แต่ พิกัดที่สองบังคับ ค่าพิกัดสามารถเป็นจำนวนเต็มหรือเศษส่วน
การวาดกากบาทสีแดงบนฟอร์ม
Drawwidth = 5
Line (0, 0) - (Scalewidth , Scaleheight), vbRed
Line (Scalewidth,0) - (0,Scalewidth ) , vbRed
เมธอด Line สนับสนุน คีย์เวิร์ด Step ในการระบุตำแหน่งแบบสัมพันธ์ Step สามารถวางหน้าคู่ ของจุดพิกัด
ถ้าข้ามอากิวเมนต์แรก การวาดเส้นจะเริ่มจากตำแหน่งปัจจุบัน
Line (1000,2000) - Step (1000,0) ' เส้นแนวนอน
Line - Step ( 0, 1000) ' เส้นแนวตั้ง
Line - ( 1000,2000) ' ปิด Triangle
รูปแบบเส้นกำหนดด้วยคุณสมบัติ DrawStyle มีค่าเริ่มต้น เป็น 0-vbSolid หรือเส้นทึบ ซึ่งสามารถกำหนดเป็นรูปแบบอื่นได้
การวาดรูปสี่เหลี่ยมให้เพิ่ม B เป็นอากิวเมนต์ที่ 4 ของเมธอด Line ตามคำสั่งจะได้สี่เหลี่ยมที่มีเส้นขอบสีน้ำเงิน
ซึ่งสี่เหลี่ยมจะได้รับผลจากคุณสมบัติ DrawWidth และ FillStyle
Line (500 , 500 ) - Step( 2000,1000 ), vbBlue, B
การวาดรูปสี่เหลี่ยมที่เติมสีภายใน ให้เพิ่ม F เป็นอากิวเมนต์ ที่ 5 เป็น BF เช่น การเขียนภาพ 3 มิติ
Line (500, 500 ) -Step( 2000,1000), RGB ( 64 , 64,64) BF ' เงาสีเทา
Line ( 450 , 450 ) - Step( 2000,1000), vbYellow , BF ' สีเหลี่ยมสีเหลือง
Line (450,450) - Step ( 2000,1000), vbBlack ,B ' เส้นขอบสีดำ
การเติมสีในสี่เหลี่ยมสามารถกำหนดรูปด้วยคุณสมบัติ FillStyle และกำหนดสีด้วยคุณสมบัติ FillColor
Line (500, 500 ) - Step(2000,1000), RGB ( 64 , 64,64) BF
FillStyle = vbFSSolid ' ใช้รูปแบบสีทับในสี่เหลียม
FillColor =vbYellow ' สีที่เติม
Line (450,450) - Step ( 2000,1000), vbBlack ,B
การวาดวงกลม วงรี และส่วนโค้ง
การวาดวงกลมใช้เมธอด Circle ซึ่งมีไวยากรณ์คือ
[object,] Circle [Step] (x, y), radius [,color] [,start] [,end] [,aspect]
Object เป็นตัวเลือก ถ้าละไว้การวาดลงบนฟอร์มปัจจุบันที่เก็บคำสั่ง และ Step คือ คีย์เวิร์ด Step
(x,y) พิกัดจุดศูนย์กลาง เป็นอากิวเมนต์บังคับ
radius รัศมี เป็นอากิวเมนต์บังคับ
color สี เป็นอากิวเมนต์ตัวเลือก ไม่บังคับ ถ้าละไว้ Visual Basic จะใช้ค่าปัจจุบัน
start และ end จุดเริ่มต้น และสิ้นสุดเรเดียนในการวาดส่วนโค้ง เป็นอากิวเมนต์ตัวเลือก
aspect อัตราส่วนของแกน x และแกน y วงกลมมีอัตราส่วนเป็น 1.0 เป็นอากิวเมนต์ตัวเลือก
การวาดวงกลมรัศมี 1000 twips
Circle (1200,1200), 1000
เมธอด Circle ได้รับผลจากคุณสมบัติ DrawWidth , DrawStyle, FillStyle และ FillColor
DrawWidth = 3
FillStyle = vbFSSolid
FillColor = vbYellow
Circle (1200,1200), 1000, vbGreen
การวาดวงรี ให้ใช้อากิวเมนต์ aspect โดย aspect = 1 เป็นวงกลม และ aspect <> 1 เป็นวงรี
Sub Ellispe (X As Single, Y As Single, RediusX As Single, RediusY As Single)
Dim ratio As Single, radius As Single
ratio = RediusX / RediusY
If ratio < 1 Then
radius = RediusX
Else
radius = RediusY
End
Circle (X, Y), radius, , , , ratio
End Sub
การวาดส่วนโค้ง ของวงกลมหรือวงรี ด้วยกำหนดอากิวเมนต์ start และ end ที่มีค่าเป็นเรเดียมโดยมีมุมเข็มนาฬิกา
Const pi = 3.14159265358979
Circle (ScaleWidth / 2, ScaleHeight / 2), 1500, vbBlack , 0, pi / 2
Project Pie
การวาด Pie Slice (การตัดส่วนของวงกลม) สามารถใช้เมธอด Circle และกำหนดค่า start และ end เป็นค่าลบ
ให้สร้าง Project ใหม่และฟอร์มใหม่ แล้วเขียนคำสั่งในโมดูลฟอร์ม
Private Sub Form_GotFocus()
Pie
End Sub
Sub Pie()
Const pi = 3.14159265358979
FillStyle = vbFSSolid
FillColor = vbBlue
Circle (ScaleWidth/2 + 200, ScaleHeight/2 + 200), _
1500, vbBlack , - (pi * 2), - (pi \ 2)
FillColor = vbWhite
Circle (ScaleWidth/2, ScaleHeight/2), 1500, _
vbBlack , - (pi * 2), - (pi \ 2)
End Sub
เมื่อป้อนคำสั่งเสร็จแล้ว ให้กดปุ่ม F5 หรือปุ่ม Run เพื่อเรียกใช้โปรแกรม
คุณสมบัติ DrawMode
คุณสมบัติ DrawMode เป็นคุณสมบัติที่จำเป็นในการเขียนโปรแกรมประยุกต์ด้านกราฟฟิกโดยคุณสมบัตินี้ระบุการตอบสนองกับพิกเซลที่อยู่บนฟอร์ม ทำให้สามารถใช้เทคนิคพิเศษจากรูปหรือการวาด
|