VB.Net Tutorial/GUI/Form Paint — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Текущая версия на 12:56, 26 мая 2010
Содержание
Form Invalidate
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class FormRefresh
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Private MouseX As Integer
Private MouseY As Integer
Dim rectangle1 As Rectangle = New Rectangle(15, 35, 80, 80)
Private Sub Form1_MouseMove(ByVal sender As Object, _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles Me.MouseMove
MouseX = e.X
MouseY = e.Y
Me.Invalidate()
End Sub
Private Sub Form1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) _
Handles Me.Paint
rectangle1.X = MouseX
rectangle1.Y = MouseY
Dim canvas As Graphics = e.Graphics
canvas.DrawRectangle(Pens.DarkRed, rectangle1)
End Sub
End Class
<Global.Microsoft.VisualBasic.rupilerServices.DesignerGenerated()> _
Partial Class Form1
Inherits System.Windows.Forms.Form
"Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected 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.SuspendLayout()
"
"Form1
"
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(469, 387)
Me.Name = "Form1"
Me.Text = "Redrawing by Invalidating"
Me.ResumeLayout(False)
End Sub
End Class
Form Refresh is faster than the Form Invalidate
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class FormRefresh
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Private MouseX As Integer
Private MouseY As Integer
Dim rectangle1 As Rectangle = New Rectangle(15, 35, 80, 80)
Private Sub Form1_MouseMove(ByVal sender As Object, _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles Me.MouseMove
MouseX = e.X
MouseY = e.Y
Me.Invalidate()
End Sub
Private Sub Form1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) _
Handles Me.Paint
rectangle1.X = MouseX
rectangle1.Y = MouseY
Dim canvas As Graphics = e.Graphics
canvas.DrawRectangle(Pens.DarkRed, rectangle1)
End Sub
End Class
<Global.Microsoft.VisualBasic.rupilerServices.DesignerGenerated()> _
Partial Class Form1
Inherits System.Windows.Forms.Form
"Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected 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.SuspendLayout()
"
"Form1
"
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(469, 387)
Me.Name = "Form1"
Me.Text = "Redrawing by Invalidating"
Me.ResumeLayout(False)
End Sub
End Class
Redraw when Form resizing
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class ResizeRedraw
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Private Sub Form1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
DrawGraphics(e.Graphics)
End Sub
Private Sub Form1_Resize(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles MyBase.Resize
DrawGraphics(Me.CreateGraphics())
End Sub
Private Sub DrawGraphics(ByVal gr As Graphics)
gr.Clear(Me.BackColor)
gr.DrawRectangle(Pens.Black, 0, 0, _
Me.ClientSize.Width - 1, _
Me.ClientSize.Height - 1)
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.SuspendLayout()
"
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(292, 273)
Me.Name = "Form1"
Me.Text = "PaintResizeX"
Me.ResumeLayout(False)
End Sub
End Class
Set Form.ResizeRedraw
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class SetResizeRedrawPropertyOfForm
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Me.ResizeRedraw = True
Me.SetStyle(ControlStyles.AllPaintingInWmPaint, True)
End Sub
Private Sub Form1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint
e.Graphics.Clear(Me.BackColor)
e.Graphics.DrawRectangle(Pens.Black, 0, 0, _
Me.ClientSize.Width - 1, _
Me.ClientSize.Height - 1)
e.Graphics.DrawLine(Pens.Black, 0, 0, _
Me.ClientSize.Width - 1, _
Me.ClientSize.Height - 1)
e.Graphics.DrawLine(Pens.Black, _
Me.ClientSize.Width - 1, 0, _
0, Me.ClientSize.Height - 1)
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.SuspendLayout()
"
"Form1
"
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(292, 273)
Me.Name = "Form1"
Me.Text = "UseResizeRedraw"
Me.ResumeLayout(False)
End Sub
End Class