[VB.NET]HatchBrush

Introduction

HatchBrush為.NET所提供的Brush類別,提供使用者 54 種系統筆刷樣式。

Constructer

HatchBrush基本上用法跟一般的Brush一樣,多半我們只需了解建構子即可。HatchBrush內建兩個多載建構子,只要傳入HatchStyle、前景色、背景色,HatchBrush筆刷物件即可完成建置。

image

HatchStyle 列舉型別

指定 HatchBrush 物件可用的不同花紋。

成員名稱說明圖示
Horizontal水平線花紋。image
Vertical垂直線花紋。image
ForwardDiagonal從左上到右下的斜線線條花紋。image
BackwardDiagonal從右上到左下的斜線線條花紋。image
Cross指定交叉的水平和垂直線條。
DiagonalCross十字形對角線的模式。image
Percent05指定百分之 5 的規劃。前景色彩與背景色彩的比例為 5:100。image
Percent10指定百分之 10 的規劃。前景色彩與背景色彩的比例為 10:100。image
Percent20指定百分之 20 的規劃。前景色彩與背景色彩的比例為 20:100。image
Percent25指定百分之 25 的規劃。前景色彩與背景色彩的比例為 25:100。image
Percent30指定百分之 30 的規劃。前景色彩與背景色彩的比例為 30:100。image
Percent40指定百分之 40 的規劃。前景色彩與背景色彩的比例為 40:100。image
Percent50指定百分之 50 的規劃。前景色彩與背景色彩的比例為 50:100。image
Percent60指定百分之 60 的規劃。前景色彩與背景色彩的比例為 60:100。image
Percent70指定百分之 70 的規劃。前景色彩與背景色彩的比例為 70:100。image
Percent75指定百分之 75 的規劃。前景色彩與背景色彩的比例為 75:100。image
Percent80指定百分之 80 的規劃。前景色彩與背景色彩的比例為 80:100。image
Percent90指定百分之 90 的規劃。前景色彩與背景色彩的比例為 90:100。image
LightDownwardDiagonal指定從頂點到底點往右斜的對角線,其間距比 ForwardDiagonal 接近百分之 50,但是沒有反鋸齒。image
LightUpwardDiagonal指定從頂點到底點往左斜的斜線,間距比 BackwardDiagonal 相互接近百分之 50,但是沒有反鋸齒補償。image
DarkDownwardDiagonal指定從頂點到底點往右斜的斜線,間距比 ForwardDiagonal 相互接近百分之 50,並且寬度為其兩倍。這個規劃花紋沒有反鋸齒補償。image
DarkUpwardDiagonal指定從頂點到底點往左斜的斜線,間距比 BackwardDiagonal 相互接近百分之 50,並且寬度為其兩倍,但是線條沒有反鋸齒補償。image
WideDownwardDiagonal指定從頂點到底點往右斜的斜線,間距與 ForwardDiagonal 規劃樣式相同,並且寬度為其三倍,但是沒有反鋸齒補償。image
WideUpwardDiagonal指定從頂點到底點往左斜的斜線,間距與 BackwardDiagonal 規劃樣式相同,並且寬度為其三倍,但是沒有反鋸齒補償。image
LightVertical指定間距比 Vertical 相互接近百分之 50 的垂直線。image
LightHorizontal指定間距比 Horizontal 相互接近百分之 50 的水平線。image
NarrowVertical指定間距比 Vertical 規劃樣式相互接近百分之 75 (或比 LightVertical 相互接近百分之 25) 的垂直線。image
NarrowHorizontal指定間距比 Horizontal 規劃樣式相互接近百分之 75 (或比 LightHorizontal 相互接近百分之 25) 的水平線。image
DarkVertical指定間距比 Vertical 相互接近百分之 50 並且寬度為其兩倍的垂直線。image
DarkHorizontal指定水平線,其間距比 Horizontal 接近百分之 50,且寬度為 Horizontal 的兩倍。image
DashedDownwardDiagonal指定從頂點到底點向右斜的短折斜線。image
DashedUpwardDiagonal指定從頂點到底點向左斜的短折斜線。image
DashedHorizontal指定短折水平線。image
DashedVertical指定短折垂直線。image
SmallConfetti指定具有五彩碎紙外觀的規劃。image
LargeConfetti指定具有五彩碎紙外觀並且由比 SmallConfetti 更大的碎紙組成的規劃。image
ZigZag指定由 Z 字形組成的水平線。image
Wave指定由波狀符號 (~) 組成的水平線。image
DiagonalBrick指定具有從頂點到底點向左斜的層次磚形外觀之規劃。image
HorizontalBrick指定具有水平層次磚形外觀的規劃。image
Weave指定具有編織材質外觀的規劃。image
Plaid指定具有格子圖案材質外觀的規劃。image
Divot指定具有草皮外觀的規劃。image
DottedGrid指定交叉的水平虛線和垂直虛線。image
DottedDiamond指定交叉的正斜虛線和反斜虛線。image
Shingle指定規劃之圖樣,其外觀為從頂點到底點向右斜的對角層次木瓦。image
Trellis指定具有格子外觀的規劃。image
Sphere指定具有相鄰置放的球體外觀之規劃。image
SmallGrid指定間距比 Cross 規劃樣式相互接近百分之 50 的交叉水平線和垂直線。image
SmallCheckerBoard指定具有棋盤外觀的規劃。image
LargeCheckerBoard指定具有方格大小為 SmallCheckerBoard 兩倍的棋盤外觀之規劃。image
OutlinedDiamond指定交叉但是沒有反鋸齒補償的正斜線和反斜線。image
SolidDiamond指定具有斜對置放的棋盤外觀之規劃。image
LargeGrid指定 Cross 規劃樣式。
Min指定 Horizontal 規劃樣式。
Max指定 SolidDiamond 規劃樣式。

程式範例

VB.NET

Imports System.Drawing.Drawing2D

Public Class Form1


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

FlowLayoutPanel1.Controls.Clear()

For Each styleIdx As Integer In [Enum].GetValues(GetType(HatchStyle))

Dim style As HatchStyle = CType(styleIdx, HatchStyle)

Dim brush As New HatchBrush(style, Color.Green, Color.Black)

Dim p As New PictureBox

Dim bmp As New Bitmap(50, 50)

Dim g As Graphics

g = Graphics.FromImage(bmp)

g.FillEllipse(brush, 0, 0, bmp.Width, bmp.Height)

p.Image = bmp

p.SizeMode = PictureBoxSizeMode.AutoSize

ToolTip1.SetToolTip(p, style.ToString)

FlowLayoutPanel1.Controls.Add(p)

Next

End Sub
End Class

執行結果

image