บทความนี้จะอธิบายตัวอย่างการวาดด้วยเมาส์ใน VB ตัวอย่างนี้แสดงให้เห็นว่าสามารถปรับแต่งสีของเส้นและความกว้างของเส้นได้ เมื่อกดปุ่มเมาส์ การวาดจะเริ่มต้นและจุดเริ่มต้นจะถูกบันทึก กระบวนการจะสิ้นสุดลง ในสถานะการวาด เส้นตรงจะถูกลากจากจุดเริ่มต้นไปยังจุดเมาส์ปัจจุบัน จากนั้นจุดเมาส์ปัจจุบันจะถูกใช้เป็นจุดเริ่มต้นใหม่ การวาดจะสิ้นสุดเมื่อปล่อยปุ่มเมาส์ .
รหัสฟังก์ชันเฉพาะมีดังนี้:
เวอร์ชัน 5.00Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "comdlg32.ocx"Begin VB.Form Form1 Caption = "การวาดเมาส์" ClientHeight = 6420 ClientLeft = 60 ClientTop = 345 ClientWidth = 7710 LinkTopic = "Form1" ScaleHeight = 6420 ScaleWidth = 7710 StartUpPosition = 3 'ค่าเริ่มต้นของหน้าต่าง Begin VB.CommandButton Command2 Caption = "Clear" Height = 495 Left = 5640 TabIndex = 7 Top = 1440 width = 1335 End Begin VB.Frame Frame1 Caption = "ความกว้างของเส้น" ความสูง = 2655 ซ้าย = 5520 TabIndex = 2 บน = 2880 ความกว้าง = 1935 เริ่มต้น VB.OptionButton Option4 คำบรรยาย = "8" ความสูง = 495 ซ้าย = 240 TabIndex = 6 บน = 1800 ความกว้าง = 1215 สิ้นสุดเริ่มต้น VB.OptionButton Option3 คำบรรยาย = "4" ความสูง = 375 ซ้าย = 240 TabIndex = 5 บน = 1320 ความกว้าง = 1335 สิ้นสุดการเริ่มต้น VB.OptionButton Option2 คำบรรยาย = "2" ความสูง = 375 ซ้าย = 240 TabIndex = 4 บน = 840 ความกว้าง = 1,095 สิ้นสุดเริ่มต้น VB.OptionButton คำบรรยาย Option1 = "1" ความสูง = 255 ซ้าย = 240 TabIndex = 3 ด้านบน = ค่า 480 = -1 'ความกว้างที่แท้จริง = 1335 สิ้นสุด สิ้นสุดเริ่มต้น VB.CommandButton Command1 คำอธิบายภาพ = "ตั้งค่าสี" ความสูง = 495 ซ้าย = 5640 TabIndex = 1 บน = 600 ความกว้าง = 1215 สิ้นสุดเริ่มต้น MSComDlg.CommonDialog CommonDialog1 ซ้าย = 4200 ด้านบน = 3840 _ExtentX = 847 _ExtentY = 847 _Version = 393216 สิ้นสุดการเริ่มต้น VB.PictureBox Picture1 Height = 5535 ซ้าย = 480 ScaleHeight = 5475 ScaleWidth = 4515 TabIndex = 0 บน = 480 ความกว้าง = 4575 EndEndAttribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = FalseAttribute VB_Creatable = FalseAttribute VB_PredeclaredId = TrueAttribute VB_Exposed = FalseDim x1 As Integer 'จุดเริ่มต้น X พิกัด Dim y1 As Integer 'จุดเริ่มต้น Y พิกัด Dim x2 As Integer 'จุดสิ้นสุด X พิกัด Dim y2 As Integer 'จุดสิ้นสุด Y พิกัด Dim flag As Boolean ' การวาดภาพ flag' การตั้งค่าบรรทัด colorPrivate Sub Command1_Click() On Error Resume Next CommonDialog1.CancelError = True CommonDialog1.DialogTitle = "Color" CommonDialog1.ShowColor If Err <> 32755 แล้ว Picture1.ForeColor = CommonDialog1.Color End IfEnd Sub'Clear กราฟิกใน Picture1 Private Sub Command2_Click() Picture1.ClsEnd Sub'ตั้งค่าบรรทัด ความกว้าง ตัวเลือกย่อยส่วนตัว1_คลิก() รูปภาพ1.DrawWidth = 1End SubPrivate Sub Option2_Click() Picture1.DrawWidth = 2End SubPrivate Sub Option3_Click() Picture1.DrawWidth = 4End SubPrivate Sub Option4_Click() Picture1.DrawWidth = 8End SubPrivate Sub Form_Load() Picture1.Scale (0, 0)-(400, 400) ) ธง = FalseEnd SubPrivate Sub Picture1_MouseDown (ปุ่มเป็นจำนวนเต็ม, Shift เป็นจำนวนเต็ม, _X เป็นเดี่ยว, Y เป็นเดี่ยว) 'เมื่อกดปุ่มเมาส์ การวาดจะเริ่มขึ้นและบันทึกจุดเริ่มต้นเริ่มต้นแฟล็ก = True x1 = X y1 = Yend SubPrivate Sub Picture1_MouseMove (ปุ่ม เป็นจำนวนเต็ม , Shift เป็นจำนวนเต็ม _X เป็นเดี่ยว , Y As โสด)'หากคุณไม่ได้อยู่ในสถานะการวาด ให้ออกจากกระบวนการ'หากคุณอยู่ในสถานะการวาด ให้ลากเส้นตรงจากจุดเริ่มต้นไปยังจุดเมาส์ปัจจุบัน'จากนั้นใช้จุดเมาส์ปัจจุบันเป็นจุดเริ่มต้นใหม่หากธง = False จากนั้นออกจาก Sub End ถ้า If flag = True แล้ว x2 = Integer, Shift As Integer, _X As Single, Y As Single)' การวาดจะสิ้นสุดลงเมื่อปล่อยปุ่มเมาส์ = FalseEnd Sub
มีความคิดเห็นค่อนข้างละเอียดในโปรแกรม ผมเชื่อว่า ผู้อ่านจะเข้าใจได้ง่าย