日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

VB.NET 开发ColorPicker例子

發布時間:2023/12/31 asp.net 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VB.NET 开发ColorPicker例子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這個colorPicker是繼承control來寫的。如果大家在寫時候可以繼承control 或usercontrol來寫。

難度并不是很大,只要耐心一點就可認寫出來。

用vb.net 寫的,代碼如下:

view plaincopy to clipboardprint?
Imports System.Drawing??
?
Imports System.Drawing.Drawing2D??
?
Imports System.Drawing.Imaging??
?
Imports System.Collections??
?
Imports System.ComponentModel??
?
Imports System.Collections.Generic??
?
Public Class ColorControl??
?
?
?
??? Dim bit As New Bitmap(200, 230)??
?
??? Dim isDraw As Boolean = False?
?
??? Dim index As Integer = 0??
?
??? Dim g As Graphics = Graphics.FromImage(bit)??
?
??? Dim _NowColor As Color = Color.Transparent '現在顏色??
?
??? Dim _CurrentColor As Color = Color.Transparent '當前顏前??
?
?
?
??? '輸出顏色??
?
??? Public Event OutputColorEvent(ByVal NColor As Color, ByVal CColor As Color)??
?
?
?
??? '觸發事件??
?
??? Sub OutcolorHander(ByVal nColor As Color, ByVal CColor As Color)??
?
??????? RaiseEvent OutputColorEvent(nColor, CColor)??
?
??? End Sub?
?
?
?
??? '顏色表??
?
??? Dim ColorList() As Integer = {&HFF003366, &HFF336699, &HFF3366CC, &HFF003399, &HFF000099, &HFF0000CC, &HFF000066, _??
?
&HFF006666, &HFF006699, &HFF0099CC, &HFF0066CC, &HFF0033CC, &HFF0000FF, &HFF3333FF, &HFF333399, _??
?
&HFF008080, &HFF009999, &HFF33CCCC, &HFF00CCFF, &HFF0099FF, &HFF0066FF, &HFF3366FF, &HFF3333CC, &HFF666699, _??
?
&HFF339966, &HFF00CC99, &HFF00FFCC, &HFF00FFFF, &HFF33CCFF, &HFF3399FF, &HFF6699FF, &HFF6666FF, &HFF6600FF, &HFF6600CC, _??
?
&HFF339933, &HFF00CC66, &HFF00FF99, &HFF66FFCC, &HFF66FFFF, &HFF66CCFF, &HFF9999FF, &HFF9999FF, &HFF9966FF, &HFF9933FF, &HFF9900FF, _??
?
&HFF006600, &HFF00CC00, &HFF00FF00, &HFF66FF99, &HFF99FFCC, &HFFCCFFFF, &HFFCCECFF, &HFFCCCCFF, &HFFCC99FF, &HFFCC66FF, &HFFCC00FF, &HFF9900CC, _??
?
&HFF003300, &HFF008000, &HFF33CC33, &HFF66FF66, &HFF99FF99, &HFFCCFFCC, &HFFFFFFFF, &HFFFFCCFF, &HFFFF99FF, &HFFFF66FF, &HFFFF00FF, &HFFCC00CC, &HFF660066, _??
?
&HFF336600, &HFF009900, &HFF66FF33, &HFF99FF66, &HFFCCFF99, &HFFFFFFCC, &HFFFFCCCC, &HFFFF99CC, &HFFFF66CC, &HFFFF33CC, &HFFCC0099, &HFF800080, _??
?
&HFF333300, &HFF669900, &HFF99FF33, &HFFCCFF66, &HFFFFFF99, &HFFFFCC99, &HFFFF9999, &HFFFF6699, &HFFFF3399, &HFFCC3399, &HFF800080, _??
?
&HFF666633, &HFF99CC00, &HFFCCFF33, &HFFFFFF66, &HFFFFCC66, &HFFFF9966, &HFFFF7C80, &HFFFF0066, &HFFD60093, &HFF993366, _??
?
&HFF808000, &HFFCCCC00, &HFFFFFF00, &HFFFFCC00, &HFFFF9933, &HFFFF6600, &HFFFF5050, &HFFCC0066, &HFF660033, _??
?
&HFF996633, &HFFCC9900, &HFFFF9900, &HFFCC6600, &HFFFF3300, &HFFFF0000, &HFFCC0000, &HFF990033, _??
?
&HFF663300, &HFF996600, &HFFCC3300, &HFF993300, &HFF990000, &HFF800000, &HFFA50021, _??
?
&HFFFFFFFF, _??
?
&HFFF8F8F8, &HFFDDDDDD, &HFFB2B2B2, &HFF808080, &HFF5F5F5F, &HFF333333, &HFF1C1C1C, &HFF080808, _??
?
&HFFEAEAEA, &HFFC0C0C0, &HFF969696, &HFF777777, &HFF4D4D4D, &HFF292929, &HFF111111, _??
?
&HFF000000}??
?
?
?
??? Sub New()??
?
??????? ' This call is required by the Windows Form Designer.??
?
??????? InitializeComponent()??
?
??????? ' Add any initialization after the InitializeComponent() call.??
?
??????? SetStyle(ControlStyles.AllPaintingInWmPaint, True)??
?
??????? SetStyle(ControlStyles.StandardDoubleClick, True)??
?
??????? SetStyle(ControlStyles.ResizeRedraw, True)??
?
??????? SetStyle(ControlStyles.UserPaint, True)??
?
??????? SetStyle(ControlStyles.OptimizedDoubleBuffer, True)??
?
??????? g.SmoothingMode = SmoothingMode.HighQuality??
?
??? End Sub?
?
?
?
??? <Description("現在顏色")> _??
?
??? <Browsable(True)> _??
?
??? Public Property NowColor() As Color??
?
??????? Get?
?
??????????? Return _NowColor??
?
??????? End Get?
?
??????? Set(ByVal value As Color)??
?
??????????? _NowColor = value??
?
??????? End Set?
?
??? End Property?
?
?
?
??? <Description("現在顏色")> _??
?
??? <Browsable(True)> _??
?
??? Public Property CurrentColor() As Color??
?
??????? Get?
?
??????????? Return _CurrentColor??
?
??????? End Get?
?
??????? Set(ByVal value As Color)??
?
??????????? _CurrentColor = value??
?
??????? End Set?
?
??? End Property?
?
?
?
?
?
??? ''' <summary>??
?
??? '''繪制六角形上方???
? pdf
??? ''' </summary>??
?
??? ''' <param name="gridSize">繪制六角形的長寬</param>??
?
??? ''' <param name="mapSize">繪制個數</param>??
?
??? ''' <param name="e">繪制對象</param>??
?
??? ''' <remarks></remarks>??
?
??? Public Sub BulidHexes(ByVal gridSize As Size, ByVal mapSize As Size, ByVal e As PaintEventArgs)??
?
??????? If isDraw = True Then?
?
??????????? e.Graphics.DrawImage(bit, 0, 0)??
?
??????????? Exit Sub?
?
??????? End If?
?
??????? Dim lindes As List(Of PointF) = Nothing?
?
??????? '六角格的水平半徑各垂直半徑??
?
??????? Dim wRad As Single = gridSize.Width / 2??
?
??????? Dim HRad As Single = gridSize.Height / 2??
?
?
?
??????? '六角格的水平直線,垂直線??
?
??????? Dim WLine As Single = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? Dim hLine As Single = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? Dim wSpce As Single = (wRad - WLine) * 2??
?
??????? Dim hspce As Single = (HRad - hLine) * 2??
?
??????? '六角格的中心點??
?
??????? Dim cx As Single?
?
??????? Dim cy As Single?
?
??????? Dim isCenter As Boolean = False?
?
??????? Dim result As GraphicsPath??
?
??????? For y As Integer = 0 To mapSize.Height - 1??
?
??????????? If isCenter = False Then?
?
??????????????? mapSize.Width += 1??
?
??????????? Else?
?
??????????????? mapSize.Width -= 1??
?
??????????? End If?
?
?
?
??????????? If y = 6 Then?
?
??????????????? isCenter = True?
?
??????????? End If?
?
??????????? For x As Integer = 0 To mapSize.Width - 1??
?
??????????????? '計當前六角格的中心點??
?
??????????????? cx = (gridSize.Width * (x + 1) - wRad) + 100??
?
??????????????? cy = (gridSize.Height * (y + 1) - HRad)??
?
??????????????? cx = cx - wSpce * x??
?
??????????????? cy = cy - hspce * y * 2??
?
?
?
??????????????? If isCenter = False Then?
?
??????????????????? cx = cx - WLine * mapSize.Width??
?
??????????????? Else?
?
??????????????????? cx = cx - WLine * mapSize.Width??
?
??????????????? End If?
?
?
?
??????????????? '保存六角格的六個角的位置??
?
??????????????? lindes = New List(Of PointF)(6)??
?
??????????????? '北??
?
??????????????? Dim start As New PointF(cx, cy - HRad)??
?
??????????????? lindes.Add(start)??
?
??????????????? '東北??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????????????? '東南??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????????????? '南??
?
??????????????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????????????? '西南??
?
??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????????????? '西北??
?
??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????????????? '回到起點:北??
?
??????????????? lindes.Add(start)??
?
??????????????? result = New GraphicsPath()??
?
??????????????? result.AddLines(lindes.ToArray())??
?
??????????????? result.CloseFigure()??
?
??????????????? Dim solidB As SolidBrush??
?
??????????????? solidB = New SolidBrush(Color.FromArgb(ColorList(index)))??
?
??????????????? index += 1??
?
??????????????? g.FillPath(solidB, result)??
?
??????????? Next?
?
??????? Next?
?
?
?
?
?
??????? '=======================??
?
??????? '下左??
?
??????? wRad = 31 / 2??
?
??????? HRad = 32 / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
??????
?
??????????? '計當前六角格的中心點??
?
??????? cx = 32 - wRad + 10??
?
??????? cy = 32 - HRad + 190??
?
??????? cx = cx - wSpce??
?
??????? cy = cy - hspce * 2??
?
??????????? '保存六角格的六個角的位置??
?
??????????? lindes = New List(Of PointF)(6)??
?
??????? '北??
?
??????? Dim START1 As New PointF(cx, cy - HRad)??
?
??????? lindes.Add(START1)??
?
??????????? '東北??
?
??????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????????? '東南??
?
??????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????????? '南??
?
??????????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????????? '西南??
?
??????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????????? '西北??
?
??????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????????? '回到起點:北??
?
??????? lindes.Add(START1)??
?
??????????? result = New GraphicsPath()??
?
??????????? result.AddLines(lindes.ToArray())??
?
??????????? result.CloseFigure()??
?
??????? Dim solidX As SolidBrush??
?
??????? solidX = New SolidBrush(Color.FromArgb(ColorList(index)))??
?
??????? index += 1??
?
??????? g.FillPath(solidX, result)??
?
?
?
?
?
??????? '================??
?
??????? '下中??
?
??????? wRad = gridSize.Width / 2??
?
??????? HRad = gridSize.Height / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
?
?
??????? Dim len As Integer = 7??
?
??????? For y As Integer = 0 To 1??
?
??????????? If y = 1 Then?
?
??????????????? len = 6??
?
??????????? End If?
?
??????????? For x As Integer = 0 To len??
?
??????????????? '計當前六角格的中心點??
?
??????????????? cx = (gridSize.Width * (x + 1) - wRad) + 45??
?
??????????????? cy = (gridSize.Height * (y + 1) - HRad) + 180??
?
??????????????? cx = cx - wSpce * x??
?
??????????????? cy = cy - hspce * y * 2??
?
??????????????? If y = 1 Then?
?
??????????????????? cx = cx + WLine??
?
??????????????? End If?
?
??????????????? '保存六角格的六個角的位置??
?
??????????????? lindes = New List(Of PointF)(6)??
?
??????????????? '北??
?
??????????????? Dim start As New PointF(cx, cy - HRad)??
?
??????????????? lindes.Add(start)??
?
??????????????? '東北??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????????????? '東南??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????????????? '南??
?
??????????????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????????????? '西南?? pdf
??
??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????????????? '西北??
?
??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????????????? '回到起點:北??
?
??????????????? lindes.Add(start)??
?
??????????????? result = New GraphicsPath()??
?
??????????????? result.AddLines(lindes.ToArray())??
?
??????????????? Dim solidY As SolidBrush??
?
??????????????? solidY = New SolidBrush(Color.FromArgb(ColorList(index)))??
?
??????????????? index += 1??
?
??????????????? g.FillPath(solidY, result)??
?
??????????? Next?
?
??????? Next?
?
?
?
?
?
??????? '==============??
?
??????? '下右??
?
??????? wRad = 31 / 2??
?
??????? HRad = 32 / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
?
?
??????? '計當前六角格的中心點??
?
??????? cx = 32 - wRad + 165??
?
??????? cy = 32 - HRad + 190??
?
??????? cx = cx - wSpce??
?
??????? cy = cy - hspce * 2??
?
??????? '保存六角格的六個角的位置??
?
??????? lindes = New List(Of PointF)(6)??
?
??????? '北??
?
??????? Dim START2 As New PointF(cx, cy - HRad)??
?
??????? lindes.Add(START2)??
?
??????? '東北??
?
??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????? '東南??
?
??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????? '南??
?
??????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????? '西南??
?
??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????? '西北??
?
??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????? '回到起點:北??
?
??????? lindes.Add(START2)??
?
??????? result = New GraphicsPath()??
?
?
?
??????? result.AddLines(lindes.ToArray())??
?
??????? result.CloseFigure()??
?
??????? Dim solidE As SolidBrush??
?
?
?
??????? solidE = New SolidBrush(Color.Black)??
?
??????? g.FillPath(solidE, result)??
?
??????? e.Graphics.DrawImage(bit, 0, 0)??
?
??????? isDraw = True?
?
?
?
??? End Sub?
?
?
?
?
?
??? Dim _PenColor As Color = Color.White??
?
??? Dim _penSize As Single = 2??
?
??? <Description("移動外邊六角形的顏色")> _??
?
??? <Browsable(True)> _??
?
???? Public Property PenColor() As Color??
?
??????? Get?
?
??????????? Return _PenColor??
?
??????? End Get?
?
??????? Set(ByVal value As Color)??
?
??????????? _PenColor = value??
?
??????? End Set?
?
??? End Property?
?
?
?
??? <Description("畫筆的大小")> _??
?
??? Public Property PenSize() As Single?
?
??????? Get?
?
??????????? Return _penSize??
?
??????? End Get?
?
??????? Set(ByVal value As Single)??
?
??????????? _penSize = value??
?
??????? End Set?
?
??? End Property?
?
?
?
?
?
?
?
?
?
?
?
?
?
??? ''' <summary>??
?
??? ''' 重繪方法??
?
??? ''' </summary>??
?
??? ''' <param name="e"></param>??
?
??? ''' <remarks></remarks>??
?
??? Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)??
?
??????? MyBase.OnPaint(e)??
?
??????? BulidHexes(New Size(16, 17), New Size(6, 13), e)??
?
??????? If ISContent = True Then?
?
??????????? Dim pen As New Pen(PenColor, PenSize)??
?
??????????? Dim GContent As Graphics = e.Graphics??
?
??????????? GContent.SmoothingMode = SmoothingMode.AntiAlias??
?
??????????? GContent.DrawPolygon(pen, lindes.ToArray())??
?
??????????? NowColor = Color.FromArgb(ColorList(index))??
?
??????????? OutcolorHander(NowColor, CurrentColor)??
?
?
?
??????? End If?
?
??? End Sub?
?
?
?
??? Dim MovePoint As PointF??
?
??? Dim ISContent As Boolean = False?
?
??? Dim lindes As List(Of PointF) = Nothing?
?
??? ''' <summary>??
?
??? ''' 鼠標的移動??
?
??? ''' </summary>??
?
??? ''' <param name="e"></param>??
?
??? ''' <remarks></remarks>??
?
??? Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)??
?
??????? MyBase.OnMouseMove(e)??
?
??????? If e.Button = Windows.Forms.MouseButtons.Left Then?
?
??????????? MovePoint.X = e.X??
?
??????????? MovePoint.Y = e.Y??
?
??????????? PointInContent(MovePoint)??
?
??????? End If?
?
??? End Sub?
?
??? ''' <summary>??
?
??? ''' 鼠標的單擊??
?
??? ''' </summary>??
?
??? ''' <param name="e"></param>??
?
??? ''' <remarks></remarks>??
?
??? Protected Overrides Sub OnMouseClick(ByVal e As System.Windows.Forms.MouseEventArgs)??
?
??????? MyBase.OnMouseClick(e)??
?
??????? If e.Button = Windows.Forms.MouseButtons.Left Then?
?
??????????? MovePoint.X = e.X??
?
??????????? MovePoint.Y = e.Y??
?
??????????? PointInContent(MovePoint)??
?
??????? End If?
?
??? End Sub?
?
?
?
?
?
??? Protected Overrides Sub OnMouseDoubleClick(ByVal e As System.Windows.Forms.MouseEventArgs)??
?
??????? MyBase.OnMouseDoubleClick(e)??
?
??????? If e.Button = Windows.Forms.MouseButtons.Left Then?
?
??????????? MovePoint.X = e.X??
?
??????????? MovePoint.Y = e.Y??
?
??????????? PointInContent(MovePoint)??
?
??????????? If ISContent = True Then?
?
??????????????? CurrentColor = Color.FromArgb(ColorList(index))??
?
??????????????? OutcolorHander(NowColor, CurrentColor)??
?
??????????? End If?
?
??????? End If?
?
??? End Sub?
?
?
?
?
?
??? ''' <summary>??
?
??? ''' 判斷當前點所在的六角形位置??
?
??? ''' </summary>??
?
??? ''' <param name="Mpoint"></param>??
?
??? ''' <remarks></remarks>??
?
??? Sub PointInContent(ByVal Mpoint As PointF)??
?
??????? index = 0??
?
??????? Dim gridsize As Size = New Size(16, 17)??
?
??????? Dim mapsize As Size = New Size(6, 13)??
?
??????? '六角格的水平半徑各垂直半徑??
?
?
?
??????? Dim wRad As Single = gridsize.Width / 2??
?
??????? Dim HRad As Single = gridsize.Height / 2??
?
??????? '六角格的水平直線,垂直線??
?
?
?
??????? Dim WLine As Single = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? Dim hLine As Single = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
?
?
??????? Dim wSpce As Single = (wRad - WLine) * 2??
?
??????? Dim hspce As Single = (HRad - hLine) * 2??
?
??????? '六角格的中心點??
?
??????? Dim cx As Single?
?
??????? Dim cy As Single?
?
??????? Dim boo As Boolean = False?
?
?
?
??????? For y As Integer = 0 To mapsize.Height - 1??
?
?
?
??????????? If boo = False Then?
?
??????????????? mapsize.Width += 1??
?
??????????? Else?
?
??????????????? mapsize.Width -= 1??
?
??????????? End If?
?
?
?
??????????? If y = 6 Then?
?
??????????????? boo = True?
?
??????????? End If?
?
?
?
??????????? For x As Integer = 0 To mapsize.Width - 1??
?
??????????????? '計當前六角格的中心點??
?
??????????????? cx = (gridsize.Width * (x + 1) - wRad) + 100??
?
??????????????? cy = (gridsize.Height * (y + 1) - HRad)??
?
??????????????? cx = cx - wSpce * x??
?
??????????????? cy = cy - hspce * y * 2??
?
??????????????? If boo = False Then?
?
?
?
??????????????????? cx = cx - WLine * mapsize.Width??
?
??????????????? Else?
?
??????????????????? cx = cx - WLine * mapsize.Width??
?
??????????????? End If?
?
??????????????? '保存六角格的六個角的位置??
?
??????????????? lindes = New List(Of PointF)(6)??
?
??????????????? '北??
?
??????????????? Dim start As New PointF(cx, cy - HRad)??
?
??????????????? lindes.Add(start)??
?
??????????????? '東北??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????????????? '東南??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????????????? '南??
?
??????????????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????????????? '西南??
?
??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????????????? '西北??
?
??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
??????????????? '回到起點:北??
?
??????????????? lindes.Add(start)??
?
?
?
?
?
??????????????? '判斷點??
?
??????????????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then?
?
??????????????????? ISContent = True?
?
??????????????????? Me.Invalidate()??
?
??????????????????? Exit Sub?
?
??????????????? End If?
?
?
?
??????????????? index += 1??
?
??????????? Next?
?
??????? Next?
?
?
?
??????? '=======================??
?
??????? '下左??
?
??????? wRad = 31 / 2??
?
??????? HRad = 32 / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
?
?
??????? '計當前六角格的中心點??
?
??????? cx = 32 - wRad + 10??
?
??????? cy = 32 - HRad + 190??
?
??????? cx = cx - wSpce??
?
??????? cy = cy - hspce * 2??
?
??????? '保存六角格的六個角的位置??
?
??????? lindes = New List(Of PointF)(6)??
?
??????? '北??
?
??????? Dim START1 As New PointF(cx, cy - HRad)??
?
??????? lindes.Add(START1)??
?
??????? '東北??
?
??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????? '東南??
?
??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????? '南??
?
??????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????? '西南??
?
??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????? '西北??
?
??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????? '回到起點:北??
?
??????? lindes.Add(START1)??
?
?
?
??????? '判斷點??
?
??????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then?
?
??????????? ISContent = True?
?
??????????? Me.Invalidate()??
?
??????????? Exit Sub?
?
??????? End If?
?
??????? index += 1??
?
?
?
??????? '================??
?
??????? '下中??
?
??????? wRad = gridsize.Width / 2??
?
??????? HRad = gridsize.Height / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
??????? Dim len As Integer = 7??
?
??????? For y As Integer = 0 To 1??
?
??????????? If y = 1 Then?
?
??????????????? len = 6??
?
??????????? End If?
?
??????????? For x As Integer = 0 To len??
?
??????????????? '計當前六角格的中心點??
?
??????????????? cx = (gridsize.Width * (x + 1) - wRad) + 45??
?
??????????????? cy = (gridsize.Height * (y + 1) - HRad) + 180??
?
??????????????? cx = cx - wSpce * x??
?
??????????????? cy = cy - hspce * y * 2??
?
??????????????? If y = 1 Then?
?
?
?
??????????????????? cx = cx + WLine??
?
??????????????? End If?
?
??????????????? '保存六角格的六個角的位置??
?
??????????????? lindes = New List(Of PointF)(6)??
?
??????????????? '北??
?
??????????????? Dim start As New PointF(cx, cy - HRad)??
?
??????????????? lindes.Add(start)??
?
??????????????? '東北??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????????????? '東南??
?
??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????????????? '南??
?
??????????????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????????????? '西南??
?
??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????????????? '西北??
?
??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????????????? '回到起點:北??
?
??????????????? lindes.Add(start)??
?
?
?
??????????????? '判斷點??
?
??????????????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then?
?
??????????????????? ISContent = True?
?
??????????????????? Me.Invalidate()??
?
??????????????????? Exit Sub?
?
??????????????? End If?
?
??????????????? index += 1??
?
??????????? Next?
?
??????? Next?
?
?
?
?
?
??????? '==============??
?
??????? '下右??
?
??????? wRad = 31 / 2??
?
??????? HRad = 32 / 2??
?
??????? '六角格的水平直線,垂直線??
?
??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))??
?
??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))??
?
??????? '進行蜂窩式切合所必要的位偏移量??
?
??????? wSpce = (wRad - WLine) * 2??
?
??????? hspce = (HRad - hLine) * 2??
?
?
?
??????? '計當前六角格的中心點??
?
??????? cx = 32 - wRad + 165??
?
??????? cy = 32 - HRad + 190??
?
??????? cx = cx - wSpce??
?
??????? cy = cy - hspce * 2??
?
??????? '保存六角格的六個角的位置??
?
??????? lindes = New List(Of PointF)(6)??
?
??????? '北??
?
??????? Dim START2 As New PointF(cx, cy - HRad)??
?
??????? lindes.Add(START2)??
?
??????? '東北??
?
??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))??
?
?
?
??????? '東南??
?
??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))??
?
?
?
??????? '南??
?
??????? lindes.Add(New PointF(cx, cy + HRad))??
?
?
?
??????? '西南??
?
??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))??
?
?
?
??????? '西北??
?
??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))??
?
?
?
??????? '回到起點:北??
?
??????? lindes.Add(START2)??
?
?
?
?
?
??????? '判斷點??
?
??????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then?
?
??????????? ISContent = True?
?
??????????? Me.Invalidate()??
?
??????????? Exit Sub?
?
??????? End If?
?
????????
?
??? End Sub?
?
?
?
End Class?

Imports System.Drawing

Imports System.Drawing.Drawing2D

Imports System.Drawing.Imaging

Imports System.Collections

Imports System.ComponentModel

Imports System.Collections.Generic

Public Class ColorControl

??? Dim bit As New Bitmap(200, 230)

??? Dim isDraw As Boolean = False

??? Dim index As Integer = 0

??? Dim g As Graphics = Graphics.FromImage(bit)

??? Dim _NowColor As Color = Color.Transparent '現在顏色

??? Dim _CurrentColor As Color = Color.Transparent '當前顏前

??? '輸出顏色

??? Public Event OutputColorEvent(ByVal NColor As Color, ByVal CColor As Color)

??? '觸發事件

??? Sub OutcolorHander(ByVal nColor As Color, ByVal CColor As Color)

??????? RaiseEvent OutputColorEvent(nColor, CColor)

??? End Sub

??? '顏色表

??? Dim ColorList() As Integer = {&HFF003366, &HFF336699, &HFF3366CC, &HFF003399, &HFF000099, &HFF0000CC, &HFF000066, _

&HFF006666, &HFF006699, &HFF0099CC, &HFF0066CC, &HFF0033CC, &HFF0000FF, &HFF3333FF, &HFF333399, _

&HFF008080, &HFF009999, &HFF33CCCC, &HFF00CCFF, &HFF0099FF, &HFF0066FF, &HFF3366FF, &HFF3333CC, &HFF666699, _

&HFF339966, &HFF00CC99, &HFF00FFCC, &HFF00FFFF, &HFF33CCFF, &HFF3399FF, &HFF6699FF, &HFF6666FF, &HFF6600FF, &HFF6600CC, _

&HFF339933, &HFF00CC66, &HFF00FF99, &HFF66FFCC, &HFF66FFFF, &HFF66CCFF, &HFF9999FF, &HFF9999FF, &HFF9966FF, &HFF9933FF, &HFF9900FF, _

&HFF006600, &HFF00CC00, &HFF00FF00, &HFF66FF99, &HFF99FFCC, &HFFCCFFFF, &HFFCCECFF, &HFFCCCCFF, &HFFCC99FF, &HFFCC66FF, &HFFCC00FF, &HFF9900CC, _

&HFF003300, &HFF008000, &HFF33CC33, &HFF66FF66, &HFF99FF99, &HFFCCFFCC, &HFFFFFFFF, &HFFFFCCFF, &HFFFF99FF, &HFFFF66FF, &HFFFF00FF, &HFFCC00CC, &HFF660066, _

&HFF336600, &HFF009900, &HFF66FF33, &HFF99FF66, &HFFCCFF99, &HFFFFFFCC, &HFFFFCCCC, &HFFFF99CC, &HFFFF66CC, &HFFFF33CC, &HFFCC0099, &HFF800080, _

&HFF333300, &HFF669900, &HFF99FF33, &HFFCCFF66, &HFFFFFF99, &HFFFFCC99, &HFFFF9999, &HFFFF6699, &HFFFF3399, &HFFCC3399, &HFF800080, _

&HFF666633, &HFF99CC00, &HFFCCFF33, &HFFFFFF66, &HFFFFCC66, &HFFFF9966, &HFFFF7C80, &HFFFF0066, &HFFD60093, &HFF993366, _

&HFF808000, &HFFCCCC00, &HFFFFFF00, &HFFFFCC00, &HFFFF9933, &HFFFF6600, &HFFFF5050, &HFFCC0066, &HFF660033, _

&HFF996633, &HFFCC9900, &HFFFF9900, &HFFCC6600, &HFFFF3300, &HFFFF0000, &HFFCC0000, &HFF990033, _

&HFF663300, &HFF996600, &HFFCC3300, &HFF993300, &HFF990000, &HFF800000, &HFFA50021, _

&HFFFFFFFF, _

&HFFF8F8F8, &HFFDDDDDD, &HFFB2B2B2, &HFF808080, &HFF5F5F5F, &HFF333333, &HFF1C1C1C, &HFF080808, _

&HFFEAEAEA, &HFFC0C0C0, &HFF969696, &HFF777777, &HFF4D4D4D, &HFF292929, &HFF111111, _

&HFF000000}

??? Sub New()

??????? ' This call is required by the Windows Form Designer.

??????? InitializeComponent()

??????? ' Add any initialization after the InitializeComponent() call.

??????? SetStyle(ControlStyles.AllPaintingInWmPaint, True)

??????? SetStyle(ControlStyles.StandardDoubleClick, True)

??????? SetStyle(ControlStyles.ResizeRedraw, True)

??????? SetStyle(ControlStyles.UserPaint, True)

??????? SetStyle(ControlStyles.OptimizedDoubleBuffer, True)

??????? g.SmoothingMode = SmoothingMode.HighQuality

??? End Sub

??? <Description("現在顏色")> _

??? <Browsable(True)> _

??? Public Property NowColor() As Color

??????? Get

??????????? Return _NowColor

??????? End Get

??????? Set(ByVal value As Color)

??????????? _NowColor = value

??????? End Set

??? End Property

??? <Description("現在顏色")> _

??? <Browsable(True)> _

??? Public Property CurrentColor() As Color

??????? Get

??????????? Return _CurrentColor

??????? End Get

??????? Set(ByVal value As Color)

??????????? _CurrentColor = value

??????? End Set

??? End Property

??? ''' <summary>

??? '''繪制六角形上方

??? ''' </summary>

??? ''' <param name="gridSize">繪制六角形的長寬</param>

??? ''' <param name="mapSize">繪制個數</param>

??? ''' <param name="e">繪制對象</param>

??? ''' <remarks></remarks>

??? Public Sub BulidHexes(ByVal gridSize As Size, ByVal mapSize As Size, ByVal e As PaintEventArgs)

??????? If isDraw = True Then

??????????? e.Graphics.DrawImage(bit, 0, 0)

??????????? Exit Sub

??????? End If

??????? Dim lindes As List(Of PointF) = Nothing

??????? '六角格的水平半徑各垂直半徑

??????? Dim wRad As Single = gridSize.Width / 2

??????? Dim HRad As Single = gridSize.Height / 2

??????? '六角格的水平直線,垂直線

??????? Dim WLine As Single = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? Dim hLine As Single = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? Dim wSpce As Single = (wRad - WLine) * 2

??????? Dim hspce As Single = (HRad - hLine) * 2

??????? '六角格的中心點

??????? Dim cx As Single

??????? Dim cy As Single

??????? Dim isCenter As Boolean = False

??????? Dim result As GraphicsPath

??????? For y As Integer = 0 To mapSize.Height - 1

??????????? If isCenter = False Then

??????????????? mapSize.Width += 1

??????????? Else

??????????????? mapSize.Width -= 1

??????????? End If

??????????? If y = 6 Then

??????????????? isCenter = True

??????????? End If

??????????? For x As Integer = 0 To mapSize.Width - 1

??????????????? '計當前六角格的中心點

??????????????? cx = (gridSize.Width * (x + 1) - wRad) + 100

??????????????? cy = (gridSize.Height * (y + 1) - HRad)

??????????????? cx = cx - wSpce * x

??????????????? cy = cy - hspce * y * 2

??????????????? If isCenter = False Then

??????????????????? cx = cx - WLine * mapSize.Width

??????????????? Else

??????????????????? cx = cx - WLine * mapSize.Width

??????????????? End If

??????????????? '保存六角格的六個角的位置

??????????????? lindes = New List(Of PointF)(6)

??????????????? '北

??????????????? Dim start As New PointF(cx, cy - HRad)

??????????????? lindes.Add(start)

??????????????? '東北

??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????????????? '東南

??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????????????? '南

??????????????? lindes.Add(New PointF(cx, cy + HRad))

??????????????? '西南

??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????????????? '西北

??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????????????? '回到起點:北

??????????????? lindes.Add(start)

??????????????? result = New GraphicsPath()

??????????????? result.AddLines(lindes.ToArray())

??????????????? result.CloseFigure()

??????????????? Dim solidB As SolidBrush

??????????????? solidB = New SolidBrush(Color.FromArgb(ColorList(index)))

??????????????? index += 1

??????????????? g.FillPath(solidB, result)

??????????? Next

??????? Next

??????? '=======================

??????? '下左

??????? wRad = 31 / 2

??????? HRad = 32 / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

???

??????????? '計當前六角格的中心點

??????? cx = 32 - wRad + 10

??????? cy = 32 - HRad + 190

??????? cx = cx - wSpce

??????? cy = cy - hspce * 2

??????????? '保存六角格的六個角的位置

??????????? lindes = New List(Of PointF)(6)

??????? '北

??????? Dim START1 As New PointF(cx, cy - HRad)

??????? lindes.Add(START1)

??????????? '東北

??????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????????? '東南

??????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????????? '南

??????????? lindes.Add(New PointF(cx, cy + HRad))

??????????? '西南

??????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????????? '西北

??????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????????? '回到起點:北

??????? lindes.Add(START1)

??????????? result = New GraphicsPath()

??????????? result.AddLines(lindes.ToArray())

??????????? result.CloseFigure()

??????? Dim solidX As SolidBrush

??????? solidX = New SolidBrush(Color.FromArgb(ColorList(index)))

??????? index += 1

??????? g.FillPath(solidX, result)

??????? '================

??????? '下中

??????? wRad = gridSize.Width / 2

??????? HRad = gridSize.Height / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

??????? Dim len As Integer = 7

??????? For y As Integer = 0 To 1

??????????? If y = 1 Then

??????????????? len = 6

??????????? End If

??????????? For x As Integer = 0 To len

??????????????? '計當前六角格的中心點

??????????????? cx = (gridSize.Width * (x + 1) - wRad) + 45

??????????????? cy = (gridSize.Height * (y + 1) - HRad) + 180

??????????????? cx = cx - wSpce * x

??????????????? cy = cy - hspce * y * 2

??????????????? If y = 1 Then

??????????????????? cx = cx + WLine

??????????????? End If

??????????????? '保存六角格的六個角的位置

??????????????? lindes = New List(Of PointF)(6)

??????????????? '北

??????????????? Dim start As New PointF(cx, cy - HRad)

??????????????? lindes.Add(start)

??????????????? '東北

??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????????????? '東南

??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????????????? '南

??????????????? lindes.Add(New PointF(cx, cy + HRad))

??????????????? '西南

??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????????????? '西北

??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????????????? '回到起點:北

??????????????? lindes.Add(start)

??????????????? result = New GraphicsPath()

??????????????? result.AddLines(lindes.ToArray())

??????????????? Dim solidY As SolidBrush

??????????????? solidY = New SolidBrush(Color.FromArgb(ColorList(index)))

??????????????? index += 1

??????????????? g.FillPath(solidY, result)

??????????? Next

??????? Next

??????? '==============

??????? '下右

??????? wRad = 31 / 2

??????? HRad = 32 / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

??????? '計當前六角格的中心點

??????? cx = 32 - wRad + 165

??????? cy = 32 - HRad + 190

??????? cx = cx - wSpce

??????? cy = cy - hspce * 2

??????? '保存六角格的六個角的位置

??????? lindes = New List(Of PointF)(6)

??????? '北

??????? Dim START2 As New PointF(cx, cy - HRad)

??????? lindes.Add(START2)

??????? '東北

??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????? '東南

??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????? '南

??????? lindes.Add(New PointF(cx, cy + HRad))

??????? '西南

??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????? '西北

??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????? '回到起點:北

??????? lindes.Add(START2)

??????? result = New GraphicsPath()

??????? result.AddLines(lindes.ToArray())

??????? result.CloseFigure()

??????? Dim solidE As SolidBrush

??????? solidE = New SolidBrush(Color.Black)

??????? g.FillPath(solidE, result)

??????? e.Graphics.DrawImage(bit, 0, 0)

??????? isDraw = True

??? End Sub

??? Dim _PenColor As Color = Color.White

??? Dim _penSize As Single = 2

??? <Description("移動外邊六角形的顏色")> _

??? <Browsable(True)> _

???? Public Property PenColor() As Color

??????? Get

??????????? Return _PenColor

??????? End Get

??????? Set(ByVal value As Color)

??????????? _PenColor = value

??????? End Set

??? End Property

??? <Description("畫筆的大小")> _

??? Public Property PenSize() As Single

??????? Get

??????????? Return _penSize

??????? End Get

??????? Set(ByVal value As Single)

??????????? _penSize = value

??????? End Set

??? End Property

??? ''' <summary>

??? ''' 重繪方法

??? ''' </summary>

??? ''' <param name="e"></param>

??? ''' <remarks></remarks>

??? Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)

??????? MyBase.OnPaint(e)

??????? BulidHexes(New Size(16, 17), New Size(6, 13), e)

??????? If ISContent = True Then

??????????? Dim pen As New Pen(PenColor, PenSize)

??????????? Dim GContent As Graphics = e.Graphics

??????????? GContent.SmoothingMode = SmoothingMode.AntiAlias

??????????? GContent.DrawPolygon(pen, lindes.ToArray())

??????????? NowColor = Color.FromArgb(ColorList(index))

??????????? OutcolorHander(NowColor, CurrentColor)

??????? End If

??? End Sub

??? Dim MovePoint As PointF

??? Dim ISContent As Boolean = False

??? Dim lindes As List(Of PointF) = Nothing

??? ''' <summary>

??? ''' 鼠標的移動

??? ''' </summary>

??? ''' <param name="e"></param>

??? ''' <remarks></remarks>

??? Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)

??????? MyBase.OnMouseMove(e)

??????? If e.Button = Windows.Forms.MouseButtons.Left Then

??????????? MovePoint.X = e.X

??????????? MovePoint.Y = e.Y

??????????? PointInContent(MovePoint)

??????? End If

??? End Sub

??? ''' <summary>

??? ''' 鼠標的單擊

??? ''' </summary>

??? ''' <param name="e"></param>

??? ''' <remarks></remarks>

??? Protected Overrides Sub OnMouseClick(ByVal e As System.Windows.Forms.MouseEventArgs)

??????? MyBase.OnMouseClick(e)

??????? If e.Button = Windows.Forms.MouseButtons.Left Then

??????????? MovePoint.X = e.X

??????????? MovePoint.Y = e.Y

??????????? PointInContent(MovePoint)

??????? End If

??? End Sub

??? Protected Overrides Sub OnMouseDoubleClick(ByVal e As System.Windows.Forms.MouseEventArgs)

??????? MyBase.OnMouseDoubleClick(e)

??????? If e.Button = Windows.Forms.MouseButtons.Left Then

??????????? MovePoint.X = e.X

??????????? MovePoint.Y = e.Y

??????????? PointInContent(MovePoint)

??????????? If ISContent = True Then

??????????????? CurrentColor = Color.FromArgb(ColorList(index))

??????????????? OutcolorHander(NowColor, CurrentColor)

??????????? End If

??????? End If

??? End Sub

??? ''' <summary>

??? ''' 判斷當前點所在的六角形位置

??? ''' </summary>

??? ''' <param name="Mpoint"></param>

??? ''' <remarks></remarks>

??? Sub PointInContent(ByVal Mpoint As PointF)

??????? index = 0

??????? Dim gridsize As Size = New Size(16, 17)

??????? Dim mapsize As Size = New Size(6, 13)

??????? '六角格的水平半徑各垂直半徑

??????? Dim wRad As Single = gridsize.Width / 2

??????? Dim HRad As Single = gridsize.Height / 2

??????? '六角格的水平直線,垂直線

??????? Dim WLine As Single = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? Dim hLine As Single = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? Dim wSpce As Single = (wRad - WLine) * 2

??????? Dim hspce As Single = (HRad - hLine) * 2

??????? '六角格的中心點

??????? Dim cx As Single

??????? Dim cy As Single

??????? Dim boo As Boolean = False

??????? For y As Integer = 0 To mapsize.Height - 1

??????????? If boo = False Then

??????????????? mapsize.Width += 1

??????????? Else

??????????????? mapsize.Width -= 1

??????????? End If

??????????? If y = 6 Then

??????????????? boo = True

??????????? End If

??????????? For x As Integer = 0 To mapsize.Width - 1

??????????????? '計當前六角格的中心點

??????????????? cx = (gridsize.Width * (x + 1) - wRad) + 100

??????????????? cy = (gridsize.Height * (y + 1) - HRad)

??????????????? cx = cx - wSpce * x

??????????????? cy = cy - hspce * y * 2

??????????????? If boo = False Then

??????????????????? cx = cx - WLine * mapsize.Width

??????????????? Else

??????????????????? cx = cx - WLine * mapsize.Width

??????????????? End If

??????????????? '保存六角格的六個角的位置

??????????????? lindes = New List(Of PointF)(6)

??????????????? '北

??????????????? Dim start As New PointF(cx, cy - HRad)

??????????????? lindes.Add(start)

??????????????? '東北

??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????????????? '東南

??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????????????? '南

??????????????? lindes.Add(New PointF(cx, cy + HRad))

??????????????? '西南

??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????????????? '西北

??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????????????? '回到起點:北

??????????????? lindes.Add(start)

??????????????? '判斷點

??????????????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then

??????????????????? ISContent = True

??????????????????? Me.Invalidate()

??????????????????? Exit Sub

??????????????? End If

??????????????? index += 1

??????????? Next

??????? Next

??????? '=======================

??????? '下左

??????? wRad = 31 / 2

??????? HRad = 32 / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

??????? '計當前六角格的中心點

??????? cx = 32 - wRad + 10

??????? cy = 32 - HRad + 190

??????? cx = cx - wSpce

??????? cy = cy - hspce * 2

??????? '保存六角格的六個角的位置

??????? lindes = New List(Of PointF)(6)

??????? '北

??????? Dim START1 As New PointF(cx, cy - HRad)

??????? lindes.Add(START1)

??????? '東北

??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????? '東南

??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????? '南

??????? lindes.Add(New PointF(cx, cy + HRad))

??????? '西南

??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????? '西北

??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????? '回到起點:北

??????? lindes.Add(START1)

??????? '判斷點

??????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then

??????????? ISContent = True

??????????? Me.Invalidate()

??????????? Exit Sub

??????? End If

??????? index += 1

??????? '================

??????? '下中

??????? wRad = gridsize.Width / 2

??????? HRad = gridsize.Height / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

??????? Dim len As Integer = 7

??????? For y As Integer = 0 To 1

??????????? If y = 1 Then

??????????????? len = 6

??????????? End If

??????????? For x As Integer = 0 To len

??????????????? '計當前六角格的中心點

??????????????? cx = (gridsize.Width * (x + 1) - wRad) + 45

??????????????? cy = (gridsize.Height * (y + 1) - HRad) + 180

??????????????? cx = cx - wSpce * x

??????????????? cy = cy - hspce * y * 2

??????????????? If y = 1 Then

??????????????????? cx = cx + WLine

??????????????? End If

??????????????? '保存六角格的六個角的位置

??????????????? lindes = New List(Of PointF)(6)

??????????????? '北

??????????????? Dim start As New PointF(cx, cy - HRad)

??????????????? lindes.Add(start)

??????????????? '東北

??????????????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????????????? '東南

??????????????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????????????? '南

??????????????? lindes.Add(New PointF(cx, cy + HRad))

??????????????? '西南

??????????????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????????????? '西北

??????????????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????????????? '回到起點:北

??????????????? lindes.Add(start)

??????????????? '判斷點

??????????????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then

??????????????????? ISContent = True

??????????????????? Me.Invalidate()

??????????????????? Exit Sub

??????????????? End If

??????????????? index += 1

??????????? Next

??????? Next

??????? '==============

??????? '下右

??????? wRad = 31 / 2

??????? HRad = 32 / 2

??????? '六角格的水平直線,垂直線

??????? WLine = Math.Sqrt(Math.Pow(wRad, 2) - Math.Pow(wRad / 2, 2))

??????? hLine = Math.Sqrt(Math.Pow(HRad, 2) - Math.Pow(HRad / 2, 2))

??????? '進行蜂窩式切合所必要的位偏移量

??????? wSpce = (wRad - WLine) * 2

??????? hspce = (HRad - hLine) * 2

??????? '計當前六角格的中心點

??????? cx = 32 - wRad + 165

??????? cy = 32 - HRad + 190

??????? cx = cx - wSpce

??????? cy = cy - hspce * 2

??????? '保存六角格的六個角的位置

??????? lindes = New List(Of PointF)(6)

??????? '北

??????? Dim START2 As New PointF(cx, cy - HRad)

??????? lindes.Add(START2)

??????? '東北

??????? lindes.Add(New PointF(cx + WLine, cy - HRad / 2))

??????? '東南

??????? lindes.Add(New PointF(cx + WLine, cy + HRad / 2))

??????? '南

??????? lindes.Add(New PointF(cx, cy + HRad))

??????? '西南

??????? lindes.Add(New Point(cx - WLine, cy + HRad / 2))

??????? '西北

??????? lindes.Add(New Point(cx - WLine, cy - HRad / 2))

??????? '回到起點:北

??????? lindes.Add(START2)

??????? '判斷點

??????? If Mpoint.Y > lindes(0).Y And Mpoint.X < lindes(1).X And Mpoint.Y < lindes(3).Y And Mpoint.X > lindes(4).X Then

??????????? ISContent = True

??????????? Me.Invalidate()

??????????? Exit Sub

??????? End If

?????

??? End Sub

End Classview plaincopy to clipboardprint?
??

?view plaincopy to pdf?clipboardprint?
<FONT size=4>在窗體是使用這個控件</FONT>?

在窗體是使用這個控件view plaincopy to clipboardprint?
<FONT size=2>效果如下圖:</FONT>?

效果如下圖:

只要處理一個事件(OutcolorEvnet)IC交易網就可以取得當前顏色與新增顏色.

下面是我的代碼。大家在修改顏色時根據自己具體的設置修改一個就行了。使用起來挺方便的

view plaincopy to clipboardprint?
Private Sub ColorControl1_OutputColorEvent(ByVal NColor As System.Drawing.Color, ByVal CColor As System.Drawing.Color) Handles ColorControl1.OutputColorEvent??
?
?????? Panel1.BackColor = NColor??
?
?????? Panel2.BackColor = CColor??
?
?? End Sub?

?Private Sub ColorControl1_OutputColorEvent(ByVal NColor As System.Drawing.Color, ByVal CColor As System.Drawing.Color) Handles ColorControl1.OutputColorEvent

??????? Panel1.BackColor = NColor

??????? Panel2.BackColor = CColor

??? End Sub

轉載于:https://www.cnblogs.com/aspxnets/archive/2011/06/29/2093811.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的VB.NET 开发ColorPicker例子的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

久草在线免费看视频 | 91av在线免费视频 | 日韩久久久久久久久 | 久久久久久黄色 | 91av视频| 丁香综合激情 | 中文字幕高清在线播放 | 午夜天使 | 欧美经典久久 | 91精品视频免费观看 | 久久久国产视频 | 国产四虎在线 | 视频在线观看一区 | 亚洲精品黄网站 | 在线观看免费一级片 | 国产一区麻豆 | 一级淫片在线观看 | 日韩大片在线播放 | 天天草综合网 | 日韩在线精品一区 | 日日夜夜天天人人 | 欧美日韩免费视频 | 国产伦精品一区二区三区高清 | 国产在线精品观看 | 色综合咪咪久久网 | 91久久奴性调教 | 在线播放 日韩专区 | 96国产在线 | 成人av在线网 | 97国产超碰 | 国产精品女教师 | 精品久久久久久久久久久久久久久久久久 | 精品国产乱码久久久久 | 中文一区在线 | 日韩欧美视频二区 | 99久精品视频 | 久久69av | 免费看一及片 | 日韩欧美在线国产 | 在线网址你懂得 | 中文字幕免费观看全部电影 | 亚洲一区二区三区毛片 | 婷婷丁香色综合狠狠色 | 国产精品色 | 999久久久精品视频 日韩高清www | 综合色中文| 黄网站色视频 | 精品国产亚洲日本 | 又黄又爽的视频在线观看网站 | 欧美日韩超碰 | 狠狠久久伊人 | 99久热在线精品 | 国产剧情在线一区 | 99久久综合精品五月天 | 在线日韩精品视频 | 韩国av一区二区三区在线观看 | 国产91精品一区二区麻豆亚洲 | 久久av高清| 五月天激情视频在线观看 | 香蕉视频久久 | 最新中文字幕在线播放 | 成人黄色大片在线免费观看 | 狠狠婷婷 | 热久久精品在线 | 国产黄免费看 | 久久久久久久久电影 | 在线中文字幕一区二区 | 操操操av | 在线视频日韩欧美 | 欧美在线视频一区二区三区 | 探花视频免费在线观看 | 精品在线观看国产 | 成人免费视频网址 | 玖草影院 | 成人毛片一区二区三区 | 开心色停停 | 欧美日韩一区二区三区在线观看视频 | 一区二区三区日韩视频在线观看 | 国产精品九九久久久久久久 | 亚洲一级片在线观看 | 成人av教育 | 激情久久久 | 96亚洲精品久久久蜜桃 | 亚洲精品国偷拍自产在线观看蜜桃 | 久久久麻豆精品一区二区 | 国产玖玖在线 | 天堂av免费在线 | 久久婷婷开心 | 午夜在线日韩 | 五月婷婷丁香 | 久久国产精品影片 | 免费在线观看av网站 | 久久综合桃花 | 国产伦理一区二区 | 欧美一级免费在线 | 激情五月婷婷综合网 | 国产va在线 | 在线视频日韩 | 天天操网 | 在线观看国产日韩欧美 | 亚洲精区二区三区四区麻豆 | 精品在线观看一区二区 | 最新av免费在线 | 五月婷婷激情综合 | 91一区一区三区 | 国产精品国产精品 | 久久久久免费看 | 欧美日韩不卡一区二区 | 爱爱av网站 | 久久久久在线 | 国产精品久久久久久久99 | 91看片一区二区三区 | 日韩国产欧美在线播放 | 国内综合精品午夜久久资源 | 午夜a区| 黄色一级动作片 | 在线视频 亚洲 | 国产精品激情 | 国产日韩中文在线 | 天天射天天操天天 | 午夜精品久久久久久久99水蜜桃 | 久久免费视频99 | 99精品久久只有精品 | 伊人狠狠操 | 狠狠色丁香久久婷婷综合_中 | 四虎5151久久欧美毛片 | 五月天激情开心 | 国产在线视频在线观看 | 欧美一区在线观看视频 | 在线观看亚洲精品 | 深夜视频久久 | 在线电影 一区 | 国内免费久久久久久久久久久 | 亚洲一区美女视频在线观看免费 | 不卡的av片 | 久久黄色网址 | 国内视频在线 | 黄色99视频 | 国产一区二区视频在线 | 五月天综合网站 | 日韩国产精品毛片 | 国产精品一区二区在线 | 亚洲国内精品在线 | 日韩三级在线 | 日本精品在线视频 | 色婷在线 | 成年人免费看片 | 91网址在线看 | 国产在线看 | 亚洲在线视频网站 | 欧美一区二区日韩一区二区 | 亚洲精品av中文字幕在线在线 | 欧美日韩视频免费 | 最新日韩在线观看 | 黄色资源网站 | 色丁香久久| 日本成人a | 人人狠狠| 日韩av专区 | 国产精品 999 | 国产精品国产亚洲精品看不卡15 | 91久久精品一区二区三区 | 日韩av电影免费观看 | 久久久精品午夜 | av动图| 91手机电视| 天天躁日日躁狠狠 | 国产在线精品一区二区三区 | 99精品视频免费看 | 97视频网址 | 少妇高潮冒白浆 | 精品伊人久久久 | 久久精品成人欧美大片古装 | 国产精品1024 | 成人在线免费看视频 | 啪啪精品| www成人精品| 亚洲国产日韩av | 日韩高清免费在线观看 | 国产日韩欧美在线 | 久久草在线视频国产 | 亚洲欧美日韩一二三区 | 美女网站视频免费黄 | 久久图 | 久久超级碰视频 | 亚洲免费成人 | 亚洲成a人片在线观看网站口工 | 丁香久久综合 | 日韩av电影免费观看 | 国产视频一区二区在线播放 | 久久小视频 | a爱爱视频 | 国产一级91| 中文字幕在线电影 | 成人一级片免费看 | 国产精品婷婷午夜在线观看 | 国产视频精品网 | 日韩av专区 | 人人看黄色 | 91丨九色丨91啦蝌蚪老版 | 免费在线一区二区三区 | 国产中出在线观看 | 五月婷婷欧美视频 | 亚洲天天综合网 | 黄色av一区| 三级av免费观看 | 一区精品在线 | 久久高清毛片 | 婷婷 综合 色 | 欧美成人精品欧美一级乱黄 | 奇米777777| 国产精品久久久久永久免费 | 99婷婷狠狠成为人免费视频 | 香蕉在线观看视频 | 在线看片中文字幕 | 欧美激情视频在线免费观看 | 四虎在线观看视频 | 欧美日韩免费观看一区=区三区 | 午夜精品一区二区三区在线播放 | 久久xx视频 | 亚洲精品系列 | 成人国产精品一区二区 | 久久久福利视频 | 精品久久久久久久久久久久久久久久久久 | 高清精品久久 | 精品视频久久久 | 午夜狠狠干 | 欧美精品一区二区三区一线天视频 | 午夜12点 | 亚洲精品久久久蜜臀下载官网 | 国产永久免费高清在线观看视频 | 色噜噜在线观看视频 | 欧美激情精品久久久久久免费印度 | 天天看天天干天天操 | 国产美女久久久 | 91精彩视频 | 在线国产91 | 一级成人免费 | 色婷婷激婷婷情综天天 | 麻豆精品视频 | 久久午夜精品影院一区 | 五月色丁香 | 久久优 | 狠狠伊人| 国产视频导航 | 久久夜色精品国产欧美一区麻豆 | 黄色影院在线播放 | 亚洲免费av观看 | 免费在线日韩 | 久久久午夜精品理论片中文字幕 | 最近日韩免费视频 | www视频在线免费观看 | 国产视频在| 97超碰网| 五月天av在线 | 国产成人精品久 | 超碰成人av | 五月天综合激情 | 国产成人亚洲在线观看 | 激情五月婷婷综合 | 色婷婷丁香| 69国产精品视频免费观看 | 国产小视频免费观看 | 亚洲国产精品电影在线观看 | 天天操夜夜想 | 五月天九九| 欧美激情精品久久 | 国产视频69 | 国产亚洲精品成人av久久ww | 亚洲欧美在线观看视频 | 欧美精品久久久久久久亚洲调教 | 中文在线字幕观看电影 | 永久精品视频 | 中文字幕日本在线 | 98精品国产自产在线观看 | 99热这里只有精品8 久久综合毛片 | 日韩无在线| 在线观看91精品国产网站 | 99久久毛片| 国产无遮挡又黄又爽在线观看 | 日韩一区二区三区高清免费看看 | 日韩欧美精品在线观看视频 | 日韩免费网址 | 精品久久在线 | 亚洲精品在线视频观看 | 九九九九免费视频 | 亚洲九九影院 | 97视频免费在线看 | 国产福利一区二区三区在线观看 | 永久免费精品视频 | 国产午夜精品av一区二区 | 国产精品麻豆91 | 久久综合影音 | 在线国产视频 | 国产性xxxx| 九九视频在线播放 | 久久免费看毛片 | 中文字幕 国产专区 | 国产高清在线观看av | 在线国产能看的 | 九九色在线| 国产欧美日韩一区 | 久久久国产99久久国产一 | 蜜臀av一区二区 | 久草在线| 日韩国产欧美在线播放 | 97视频免费在线观看 | 91麻豆看国产在线紧急地址 | 国产999视频 | 欧美日本不卡视频 | 欧美狠狠色 | 美女网站色在线观看 | 丁香激情视频 | 亚洲黄色网络 | 9草在线| 久久香蕉影视 | 久久成人国产精品 | 午夜久久视频 | 午夜影院一级片 | 成人精品影视 | 狠狠色丁香久久综合网 | 免费黄a | 久久综合色天天久久综合图片 | 成人免费视频网站 | 国产精品va在线观看入 | 国产精品久久久久久久av电影 | 一区二区三区日韩在线 | 国产在线小视频 | 亚洲日本激情 | 精品久久久久久久久久久院品网 | 中文字幕资源网在线观看 | 在线国产福利 | 天天干天天操天天拍 | 久久亚洲福利视频 | 在线国产黄色 | 草莓视频在线观看免费观看 | 久久综合影院 | 国产原创91 | 天天爽网站 | 黄色在线观看免费 | 91精选在线观看 | 国产精品国产亚洲精品看不卡 | 在线免费黄色av | 欧美粗又大| 日韩v欧美v日本v亚洲v国产v | 久久精品香蕉 | 中文在线 | 六月丁香综合网 | 天天干视频在线 | 日韩精品免费一线在线观看 | 亚洲天堂网在线观看视频 | 亚洲成人av在线播放 | 福利视频一区二区 | 婷婷草 | 97免费视频在线播放 | 91自拍成人 | 国内成人av | 亚州性色 | 狠狠亚洲 | av在线短片 | 久久久久99精品成人片三人毛片 | 天堂麻豆 | 久久久久成人精品 | 在线a人v观看视频 | 国内久久| 久久国产精品偷 | 久久久69 | 超碰个人在线 | 亚洲精品美女在线 | 丁香视频全集免费观看 | 日韩一级精品 | 精品一区二区三区在线播放 | 久久久久中文字幕 | 九九九九九九精品任你躁 | 久久久久久麻豆 | 亚洲精品在线国产 | 久久精品99视频 | 99精品免费久久久久久日本 | 黄色免费大全 | 黄色.com| 91成人免费在线视频 | 国产在线国偷精品产拍 | 欧美 日韩 国产 中文字幕 | 伊人伊成久久人综合网小说 | 色综合天天色 | 精品久久一二三区 | 欧洲精品久久久久毛片完整版 | 黄色在线免费观看网址 | 免费看一级 | 深爱激情站 | 亚色视频在线观看 | 中文字幕日韩国产 | 超碰国产97| 狠狠久久伊人 | 国产精品久久久久四虎 | 成人一级片在线观看 | 日本性生活免费看 | 日韩免费在线视频观看 | 久久一区国产 | 色婷婷视频在线观看 | 天天综合网在线观看 | 日本天天色 | 免费网站黄 | 中文字幕国产视频 | 韩国在线一区 | 午夜精品久久久久久久久久久 | 日韩a欧美 | 久久综合婷婷国产二区高清 | 男女拍拍免费视频 | 在线国产日韩 | 西西人体4444www高清视频 | 激情网站免费观看 | 日韩久久久久久久久 | 伊人影院99 | 亚洲经典中文字幕 | 色999在线| 亚洲精品午夜久久久久久久久久久 | 久久爱992xxoo | 在线日韩 | 99精品国产一区二区 | 国产麻豆精品一区二区 | 99热超碰在线 | 亚洲精品在线视频观看 | 欧美91精品国产自产 | 欧美另类高清 videos | 国产91亚洲 | 天天干天天草 | 国产精品乱码高清在线看 | 久久国产精品99久久久久久老狼 | 最新黄色av网址 | 国产精品久久久久久久久免费 | 日韩高清精品一区二区 | 国产69精品久久99不卡的观看体验 | 蜜臀精品久久久久久蜜臀 | 国产亚洲精品成人av久久ww | 在线观看欧美成人 | 欧美韩国日本在线 | 国产成人精品999 | 久久精品国产一区二区电影 | www.婷婷com | 欧美一区二区日韩一区二区 | 国产在线看一区 | 亚洲特级片 | 97人人视频 | 国产亚洲欧美精品久久久久久 | 日韩精品一区二区三区丰满 | 丁香花在线视频观看免费 | www.亚洲在线 | 综合久久久久久久久 | 日韩精品在线看 | 久久一区国产 | 国产尤物在线视频 | 可以免费看av | 97在线看| 婷婷爱五月天 | 中文字幕欧美日韩va免费视频 | 91成人看片| 又爽又黄又无遮挡网站动态图 | 国产美女精品视频免费观看 | 中文字幕第一页av | 在线91av| 超级碰碰视频 | 亚洲男男gⅴgay双龙 | 欧美一区二区在线 | 色五月激情五月 | 日韩专区 在线 | 久久人人爽爽人人爽人人片av | 亚洲午夜精品久久久久久久久久久久 | 九九热免费观看 | 日韩精品欧美一区 | zzijzzij亚洲成熟少妇 | 日韩av专区| 婷婷成人在线 | 中文字幕亚洲欧美 | 一级片视频免费观看 | 麻豆免费视频观看 | 日日夜夜天天综合 | 国产高清在线永久 | 亚洲精品在线观看视频 | 一区二区理论片 | 久久久婷 | 欧美精品亚州精品 | 国内视频在线 | 久久高清国产视频 | 911精品美国片911久久久 | 四虎在线免费观看 | 992tv在线成人免费观看 | 日韩av电影中文字幕 | 久久污视频 | 国产视频综合在线 | 91一区啪爱嗯打偷拍欧美 | 中文字幕亚洲精品在线观看 | 日韩在线视频网址 | 免费黄色特级片 | 日日夜夜免费精品视频 | www免费在线观看 | 欧美va天堂在线电影 | 日韩 在线 | 国产精品中文在线 | 91精品对白一区国产伦 | 欧美一级黄色片 | 久久精品亚洲国产 | 免费a现在观看 | 国产夫妻自拍av | 成人网在线免费视频 | 五月天狠狠操 | 久久99精品久久久久久秒播蜜臀 | 亚洲开心激情 | 九九色在线观看 | 亚洲精品高清在线 | 激情小说久久 | 国产精品电影一区二区 | 日韩av高潮 | 91麻豆精品国产自产 | 97人人人人 | 国产精品免费久久久久影院仙踪林 | 一区三区在线欧 | 九九99视频 | 黄色小说视频网站 | 国产xx在线 | 日本精品视频一区二区 | 久久久精品欧美 | 人人草在线观看 | a级黄色片视频 | 国产亚洲欧美在线视频 | 99久久精品久久亚洲精品 | 人人爽人人爽人人片av免 | 精品欧美在线视频 | 96国产在线| 黄色com| 国产在线精品福利 | 伊人色**天天综合婷婷 | 免费高清无人区完整版 | 天天综合在线观看 | 91网在线看 | 日韩精品观看 | 久久精国产 | 91精品国产一区二区三区 | 国产精品私人影院 | 国产精品video爽爽爽爽 | 日韩激情影院 | 天天干,天天射,天天操,天天摸 | 在线观看视频h | 国产一区二区视频在线 | 欧美精品久久久久性色 | 久久影院精品 | 国内精品久久久 | 日韩成人黄色 | 成人羞羞免费 | 天天操夜操| 中文永久字幕 | 国产高清黄 | 欧美日韩xxxxx| 国产精品理论片在线观看 | 涩五月婷婷 | 亚洲欧美怡红院 | 日本色小说视频 | 色婷婷亚洲综合 | 日日操夜| 欧美精品久久久久久久久免 | 99久久精品免费看 | 日韩1级片 | 黄色a三级| bbbb操bbbb| 中文字幕成人 | 国产精品99蜜臀久久不卡二区 | 日韩精品免费在线观看视频 | 91精品国产成人www | 精品毛片久久久久久 | 亚洲 欧美 日韩 综合 | 在线观看岛国片 | av免费试看 | 超级碰视频| 99国产精品视频免费观看一公开 | 欧美日韩一区二区久久 | 久久五月精品 | 久在线观看视频 | 欧美久久久久 | 黄色av电影在线观看 | 99视| 黄色电影网站在线观看 | 日韩伦理片hd | 九九热re| 国产黄色在线网站 | 日韩免费小视频 | 丁香婷婷自拍 | 500部大龄熟乱视频使用方法 | 国产激情免费 | 99色在线| 日韩日韩日韩日韩 | 成年人在线电影 | 2018亚洲男人天堂 | a√天堂中文在线 | 国产在线中文 | 91九色成人 | 最新的av网站 | 亚洲精品大片www | 成人免费xxxxxx视频 | 亚洲欧美日韩中文在线 | 国产亚洲精品久久久久久电影 | japanesexxxhd奶水 国产一区二区在线免费观看 | 亚洲成人av片在线观看 | 黄色视屏免费在线观看 | 在线看黄网站 | 婷婷中文字幕 | 国产亚洲精品bv在线观看 | 69xxxx欧美| 夜夜摸夜夜爽 | 国产又粗又长又硬免费视频 | av电影中文字幕 | 国产视频在线观看免费 | 丁香六月在线观看 | 久久久久www | 久久久影视 | 黄网站色 | 欧美韩国日本在线观看 | 国产高清视频免费最新在线 | 亚洲国产高清在线观看视频 | 99麻豆久久久国产精品免费 | 久久久久成人精品 | 亚洲精品女人 | 国产综合香蕉五月婷在线 | 激情小说网站亚洲综合网 | 欧美天堂视频在线 | 在线看的av网站 | 在线观看国产日韩 | 高清av免费看 | 国产99久久久国产精品免费二区 | 久久你懂的 | 国产成人高清av | 精品影院一区二区久久久 | 97国产大学生情侣酒店的特点 | 在线视频app | 久久女同性恋中文字幕 | 在线观看色视频 | 欧美另类69| 天天玩夜夜操 | 97在线精品| 久久久久网址 | 99在线热播| 91社区国产高清 | 麻豆久久 | 免费久久精品视频 | 青草视频在线 | www视频在线播放 | 日日躁你夜夜躁你av蜜 | 久久女教师 | 婷婷在线观看视频 | 亚洲最大的av网站 | 国产精品久久久久久久电影 | 亚洲精品视频免费在线观看 | 91免费在线| 国产福利av在线 | 亚洲 av网站 | 在线之家免费在线观看电影 | 日韩成人黄色av | 免费在线看v | 精品国模一区二区三区 | 成人黄色电影视频 | 一区二区三区电影在线播 | 日韩午夜精品福利 | 亚洲精品在线视频观看 | 色婷婷在线观看视频 | 中文字幕在线日本 | 一级黄色大片在线观看 | 亚洲国产精品va在线看 | 国产精品高潮呻吟久久久久 | 欧美日韩亚洲在线 | 日韩成人免费在线观看 | 国产精品网红直播 | 最新av电影网站 | 性色av香蕉一区二区 | 99久久久久免费精品国产 | 亚洲精品三级 | 日韩大片在线免费观看 | 色吧av色av | 日韩一级电影网站 | 1024在线看片 | 亚洲 欧洲av| 国产综合久久 | av专区在线 | 18国产精品白浆在线观看免费 | 91成人欧美 | 少妇bbb好爽| 精品婷婷| 美女视频一区二区 | 成人羞羞视频在线观看免费 | 久久精品www人人爽人人 | 久久人91精品久久久久久不卡 | 国产一级大片在线观看 | 成人污视频在线观看 | 综合久久久久 | 亚洲精品大全 | 免费高清在线视频一区· | 久久精品免费电影 | 97涩涩视频 | 97av.com| 色婷婷国产精品一区在线观看 | 精品久久久久久久久久岛国gif | 亚洲精品视频一 | 高清av免费一区中文字幕 | 日韩成人看片 | 天天干天天操天天爱 | 黄色高清视频在线观看 | 97成人精品区在线播放 | 久久五月网 | 日韩在线观看高清 | 日本爱爱片 | 免费网站观看www在线观看 | 久久久精品午夜 | 99在线视频网站 | 一区二区免费不卡在线 | 日韩精品一区二区三区高清免费 | 91人人揉日日捏人人看 | 国产区免费 | 国产精彩视频一区 | 96久久欧美麻豆网站 | 午夜精品导航 | 日韩 精品 一区 国产 麻豆 | 五月开心婷婷 | av成年人电影| 美女网站色在线观看 | 一本到视频在线观看 | 九九免费在线观看视频 | 91视视频在线直接观看在线看网页在线看 | 婷婷在线精品视频 | 欧美一区二区在线免费看 | 五月婷婷综合在线视频 | av福利电影 | 欧美乱码精品一区 | 成人免费一级 | 日韩中字在线观看 | 日本一区二区三区免费观看 | 中文字幕久久精品亚洲乱码 | 成人午夜av电影 | 深夜免费福利在线 | 国产美女视频免费 | 韩国三级一区 | 国产亚洲精品久久久久久网站 | 欧美一进一出抽搐大尺度视频 | 亚洲欧洲精品一区二区 | 在线成人高清电影 | 日韩在线三区 | 97在线免费视频 | 四虎影视成人精品国库在线观看 | 亚洲aⅴ在线观看 | 中文字幕一区二区三区在线视频 | 美女国产免费 | 中文字幕第一页在线播放 | 亚洲成人资源 | 亚洲欧美在线视频免费 | 成年人免费av | 特级毛片在线免费观看 | 久久久久免费精品国产 | 成年人免费观看国产 | 99精品视频在线播放免费 | 国产群p| 亚洲精品欧美视频 | 中文在线亚洲 | 免费人成网ww44kk44 | 免费国产黄线在线观看视频 | 色在线观看网站 | 日韩中文字幕视频在线 | 欧美做受高潮1 | 天堂av在线网 | 国产精品福利在线观看 | 欧美狠狠操 | 久久人人爽人人爽人人片av免费 | 天天夜夜狠狠操 | 亚洲激色| 免费高清av在线看 | 成人国产一区二区 | 国产男女无遮挡猛进猛出在线观看 | 国产亚洲精品久久久久久移动网络 | 久久精品久久久久 | 亚洲免费一级 | 婷婷av色综合 | 欧美日韩色婷婷 | 成人午夜电影在线播放 | 国产精品免费久久久久 | 中文有码在线视频 | www黄色大片| 综合久久久久 | 日韩高清一| 色在线高清 | 麻豆视频国产 | 天天操天天射天天舔 | 91精品一区二区三区蜜臀 | www.人人干| 色偷偷男人的天堂av | 欧美性生爱 | 在线看日韩av | 日韩免费精品 | 国产精品高潮久久av | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 色综合天天色综合 | 久久91网 | 9999国产精品| 午夜久久电影网 | 999成人精品| 国产午夜精品理论片在线 | 中文字幕欧美日韩va免费视频 | 国产不卡av在线 | 黄色免费高清视频 | 久久在线看 | 在线亚洲观看 | 国内精品久久久久国产 | 欧美另类sm图片 | 国内视频在线 | 国产免费观看视频 | 69精品在线观看 | 国产高清视频免费 | 国产精品毛片久久蜜 | 99r国产精品 | 操操碰 | 伊人伊成久久人综合网站 | www.狠狠插.com | 国产精品免费在线视频 | 99热精品国产一区二区在线观看 | 色婷婷在线观看视频 | 成人va天堂 | 日韩啪啪小视频 | 国产精品门事件 | 国产高清在线观看 | 国产精品女| 免费无遮挡动漫网站 | 欧美色图30p| 天天草天天色 | 国产精品午夜久久久久久99热 | 成人黄色影片在线 | 久久国产午夜精品理论片最新版本 | 亚洲性xxxx| 亚洲欧洲在线视频 | 人人爽人人爽人人爽人人爽 | 久久久国产电影 | 91精品国产一区 | 99久久国产免费看 | 日韩视频免费播放 | 国产精品久久久久av免费 | 性色大片在线观看 | 亚洲精品久久久久中文字幕m男 | 国产精品激情偷乱一区二区∴ | 超碰在线最新网址 | 久久曰视频 | 婷婷丁香导航 | 欧美成人69av | 西西444www大胆高清图片 | 国产精品私人影院 | 国产美女精品久久久 | 日本老少交| 色综合久久精品 | 高清美女视频 | 婷婷新五月 | 成人精品视频久久久久 | 国产麻豆精品95视频 | 久久久五月天 | 精品久久久免费 | 国产精品久久久久久超碰 | 中文字幕乱码电影 | 久久黄色小说视频 | 久久精品国产亚洲a | 狠狠狠狠狠色综合 | 黄色影院在线免费观看 | 天天综合网 天天 | 亚洲精品中文在线 | 国产视频日韩视频欧美视频 | 久久精品中文字幕一区二区三区 | av高清不卡| 九九免费在线观看视频 | 成人欧美在线 | 在线观看理论 | 亚洲欧美日韩一区二区三区在线观看 | 天堂av网站 | 天天夜夜狠狠操 | 99久久精品免费看 | 国产伦理久久精品久久久久_ | 亚洲成人资源在线观看 | 久久久99精品免费观看乱色 | 国产v视频| 91一区啪爱嗯打偷拍欧美 | 国产人成看黄久久久久久久久 | 国产生活一级片 | 国产成人精品在线观看 | 国产 日韩 在线 亚洲 字幕 中文 | 欧美经典久久 | 国产在线欧美日韩 | 日韩精品一卡 | 久久免费精品 | 国产黄色精品在线 | 国产精品自产拍在线观看网站 | 欧美少妇的秘密 | 亚洲精品视频免费在线 | 在线观看免费91 | 国产另类xxxxhd高清 | 亚洲欧美日韩在线一区二区 | 天天射天天舔天天干 | 婷婷在线综合 | 去干成人网| 在线黄色免费av | 久久成人亚洲欧美电影 | a级国产毛片 | 免费黄色av | 综合久久久 | 999成人| 麻豆观看 | 久九视频 | 日本三级吹潮在线 | 欧美激情视频一二三区 | 五月婷婷激情 | 亚洲欧美国产精品18p | 久久夜色精品国产欧美乱 | 日韩高清三区 | 欧美日韩大片在线观看 | 中文在线字幕免费观看 | 成人动态视频 | 欧美日韩91 | 曰韩精品| 欧美网址在线观看 | 久99热| 亚洲精品在线观看视频 | 国产精品国产三级国产不产一地 | 91看片在线免费观看 | 色视频网站在线观看一=区 a视频免费在线观看 | 一区二区三区 中文字幕 | 久久艹欧美 | 黄色1级毛片 | av免费看在线 | 精品国产一区二区三区久久久久久 | 日本美女xx | 看国产黄色大片 | 亚洲国产网站 | 国产成人精品一二三区 | 四虎影视4hu4虎成人 | 波多野结衣视频网址 | 国产精品成人免费精品自在线观看 | 久久在现视频 | 日韩免费一区 | 青青看片 | 在线观看成年人 | 99亚洲天堂 | 久久久www成人免费精品 | 色多多污污 | 香蕉在线观看视频 | 免费又黄又爽视频 | 美女av免费看 | 96超碰在线 | 日韩av影视 | 激情视频区| 一级免费片| 欧美日韩伦理在线 | 国产视频在线免费观看 | 在线视频亚洲 | 午夜视频免费播放 | 玖玖在线视频观看 | 久久久久久久免费 | 久久综合色播五月 | 国产xvideos免费视频播放 | 免费中午字幕无吗 | 在线播放第一页 | 中文字幕4 | 三日本三级少妇三级99 | 久久国精品 | 一本—道久久a久久精品蜜桃 | 婷婷久久五月天 | 欧美一区二区三区在线 | 久久图 | www好男人 | 麻豆一级视频 | 香蕉视频久久久 | www.狠狠色| 操久| 揉bbb玩bbb少妇bbb| 夜夜操天天 | 在线观看成人一级片 | 久久99精品国产 | 日本不卡视频 | 免费在线观看日韩视频 | 色偷偷人人澡久久超碰69 | 97碰在线视频 | 亚洲精品一区二区18漫画 | 国产精品不卡一区 | 麻豆成人在线观看 | 天天干天天弄 | 99久久精品午夜一区二区小说 | 成人久久18免费网站 | 天天插狠狠插 | 三上悠亚一区二区在线观看 | 91九色综合| 国产美腿白丝袜足在线av | 久久久久久久久影视 | 制服丝袜天堂 | 五月天国产| 国产精品破处视频 | 国产日韩精品在线 | 韩国av电影在线观看 | 国产69精品久久99不卡的观看体验 | 美女精品网站 | 国产精品久久久久久久久久 |