欧美特黄不卡,涩涩视频在线,成人国产精品一区二区网站,亚洲一区二区三区欧美

當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

從頭創建 Visual Basic .NET 控件 (6)

從頭創建 Visual Basic .NET 控件 (6)

更新時間:2019-05-18 文章作者:未知 信息來源:網絡 閱讀次數:

第 5 步:使控件響應用戶
要允許用戶更改燈的顏色,必須檢測到用戶的鼠標單擊操作。有經驗的 Visual Basic 開發人員都知道,可以使用多種方法實現這一目的。我們使用最簡單的一種方法,即檢測 MouseUp 事件。下面是檢測用戶單擊并更改 Status 屬性以與之匹配的代碼:

Private Sub TrafficLight_MouseUp(ByVal sender As Object, _
 ByVal e As System.Windows.Forms.MouseEventArgs) _
 Handles MyBase.MouseUp
Dim nMidPointX As Integer = CInt(Me.Size.Width * 0.5)
Dim nCircleRadius As Integer = nMidPointX
If Distance(e.X, e.Y, nMidPointX, CInt(Me.Size.Height / 6)) _
< nCircleRadius Then
Me.Status = TrafficLightStatus.statusRed
Exit Sub
End If
If Distance(e.X, e.Y, nMidPointX, CInt(Me.Size.Height / 2)) _
< nCircleRadius Then
Me.Status = TrafficLightStatus.statusYellow
Exit Sub
End If
If Distance(e.X, e.Y, nMidPointX, CInt((5 * Me.Size.Height) / 6)) _
< nCircleRadius Then
Me.Status = TrafficLightStatus.statusGreen
End If

End Sub

Private Function Distance(ByVal X1 As Integer, _
ByVal Y1 As Integer, _
ByVal X2 As Integer, _
ByVal y2 As Integer) As Integer
Return CInt(System.Math.Sqrt((X1 - X2) ^ 2 + (Y1 - y2) ^ 2))
End Function

事件處理非常簡單。檢查鼠標單擊的位置和每個圓心之間的距離。(請注意,圓心分別位于控件下方 1/6、1/2 和 5/6 的位置。如果不太明白,可以在紙上畫出來看看。)如果計算出的距離小于圓的半徑,則更改 Status 屬性。

距離由 Distance 函數使用您可能在代數課中學過的公式計算。請注意,平方根函數是從 System.Math 命名空間中獲得的,數學函數通常都保存在該命名空間中。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

主站蜘蛛池模板: 尤溪县| 江门市| 兴海县| 利川市| 枞阳县| 固镇县| 蒙城县| 高州市| 邵阳市| 新乡县| 龙海市| 左权县| 宁乡县| 象州县| 太仆寺旗| 嫩江县| 湖南省| 沁水县| 沽源县| 库伦旗| 永川市| 丹阳市| 青冈县| 汾阳市| 哈密市| 贵港市| 遵义县| 揭东县| 即墨市| 洪湖市| 宁乡县| 凯里市| 平潭县| 交城县| 天全县| 随州市| 长春市| 益阳市| 江油市| 南康市| 图片|