VB.Net/2D/Drag Draw — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Версия 19:40, 26 мая 2010
Scribble: drag and draw
<source lang="vbnet"> Imports System Imports System.Windows.Forms Imports System.Collections.Generic Imports System.ruponentModel Imports System.Drawing.Imaging Imports System.Drawing Public Class MainClass
Shared Sub Main() Dim form1 As new Form1() Application.Run(form1) End Sub
End Class
Public Class Form1
Private m_Bitmap As Bitmap Private m_Graphics As Graphics Private m_Drawing As Boolean Private m_X As Integer Private m_Y As Integer Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles MyBase.Load MakeNewBitmap() End Sub " Make a new blank image. Private Sub mnuFileClear_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles mnuFileClear.Click MakeNewBitmap() End Sub Private Sub MakeNewBitmap() Dim wid As Integer = picCanvas.ClientSize.Width Dim hgt As Integer = picCanvas.ClientSize.Height m_Bitmap = New Bitmap(wid, hgt) m_Graphics = Graphics.FromImage(m_Bitmap) m_Graphics.Clear(Me.BackColor) picCanvas.Image = m_Bitmap End Sub Private Sub picCanvas_MouseDown(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) Handles picCanvas.MouseDown m_Drawing = True m_X = e.X m_Y = e.Y End Sub Private Sub picCanvas_MouseMove(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) Handles picCanvas.MouseMove If Not m_Drawing Then Exit Sub m_Graphics.DrawLine(Pens.Red, m_X, m_Y, e.X, e.Y) m_X = e.X m_Y = e.Y picCanvas.Image = m_Bitmap End Sub Private Sub picCanvas_MouseUp(ByVal sender As Object, _ ByVal e As System.Windows.Forms.MouseEventArgs) Handles picCanvas.MouseUp m_Drawing = False End Sub
End Class
<Global.Microsoft.VisualBasic.rupilerServices.DesignerGenerated()> _ Partial Public Class Form1
Inherits System.Windows.Forms.Form "Form overrides dispose to clean up the component list. <System.Diagnostics.DebuggerNonUserCode()> _ Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing AndAlso components IsNot Nothing Then components.Dispose() End If MyBase.Dispose(disposing) End Sub "Required by the Windows Form Designer Private components As System.ruponentModel.IContainer "NOTE: The following procedure is required by the Windows Form Designer "It can be modified using the Windows Form Designer. "Do not modify it using the code editor. <System.Diagnostics.DebuggerStepThrough()> _ Private Sub InitializeComponent() Me.picCanvas = New System.Windows.Forms.PictureBox Me.MenuStrip1 = New System.Windows.Forms.MenuStrip Me.mnuFile = New System.Windows.Forms.ToolStripMenuItem Me.mnuFileClear = New System.Windows.Forms.ToolStripMenuItem CType(Me.picCanvas, System.ruponentModel.ISupportInitialize).BeginInit() Me.MenuStrip1.SuspendLayout() Me.SuspendLayout() " "picCanvas " Me.picCanvas.Dock = System.Windows.Forms.DockStyle.Fill Me.picCanvas.Location = New System.Drawing.Point(0, 24) Me.picCanvas.Name = "picCanvas" Me.picCanvas.Size = New System.Drawing.Size(303, 246) Me.picCanvas.TabIndex = 0 Me.picCanvas.TabStop = False " "MenuStrip1 " Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuFile}) Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) Me.MenuStrip1.Name = "MenuStrip1" Me.MenuStrip1.Size = New System.Drawing.Size(303, 24) Me.MenuStrip1.TabIndex = 1 Me.MenuStrip1.Text = "MenuStrip1" " "mnuFile " Me.mnuFile.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.mnuFileClear}) Me.mnuFile.Name = "mnuFile" Me.mnuFile.Text = "&File" " "mnuFileClear " Me.mnuFileClear.Name = "mnuFileClear" Me.mnuFileClear.Text = "&Clear" " "Form1 " Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font Me.ClientSize = New System.Drawing.Size(303, 270) Me.Controls.Add(Me.picCanvas) Me.Controls.Add(Me.MenuStrip1) Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle Me.MainMenuStrip = Me.MenuStrip1 Me.Name = "Form1" Me.Text = "Scribble" CType(Me.picCanvas, System.ruponentModel.ISupportInitialize).EndInit() Me.MenuStrip1.ResumeLayout(False) Me.ResumeLayout(False) Me.PerformLayout() End Sub Friend WithEvents picCanvas As System.Windows.Forms.PictureBox Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip Friend WithEvents mnuFile As System.Windows.Forms.ToolStripMenuItem Friend WithEvents mnuFileClear As System.Windows.Forms.ToolStripMenuItem
End Class
</source>