频道直达 - 学院 - 下载 - 交易 - 特效 - 字库 - 手册 -排名-工具- 繁體
网页教学网站开发 设为首页
加入收藏
联系我们
建站搜索: 虚拟主机  域名注册     常用广告代码   用户注册 | 用户登陆
您当前的位置:中国建站之家 -> 网站开发设计技术教程 -> Asp.Net教程 -> 从头创建 Visual Basic .NET 控件 (六)

从头创建 Visual Basic .NET 控件 (六)

作者:未知  来源:转载  发布时间:2005-7-20 10:20:36  发布人:acx

减小字体 增大字体

第 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 命名空间中获得的,数学函数通常都保存在该命名空间中。

[打 印]
[] [返回上一页] [收 藏]
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
精彩推荐
热门文章
· 注册码大全二
· 注册码大全四
· 注册码大全一
· 要10G免费网络硬盘的请进..
· 通过google 赶快来赚美金..
· 头像-qq头像(qq新头像)4..
· 注册码大全十
· 注册码大全三
· 让你轻松架设FTP服务器1..
· 梦幻背景图片7
· 卡通动物图片6
· 风景图片8
· 网页制作素材-按钮素材2..
· 注册码大全九
· 让你轻松架设FTP服务器5..
· 50MB免费空间 FTP PHP M..
关注此文读者还看过
· 用photoshop网站版面(从..
· ASP中正则表达式的应用(..
· span div p 之间的不同区..
· 1998年申请的6位数QQ号淘..
· ActiveX深入浅出(二)
· 学用Fireworks中的特效 ..
· 不法商家以劣充好售假 网..
· PHP中创建并处理图象
· 数据库查询中的特殊字符..
· 防范SQL注入攻击的新办法..
· 用ASP编程实现网络内容快..
· ADO连接数据库字符串大全..
· 点阵图转成向量格式
· 几个开源项目配置信息的..
· MySpace在欧洲遭遇阻击 ..
· Adobe PhotoshopCS终极优..
相关文章
· 《大话李白》的创作全过程 ..
· ASP数据库连接方式大全 六
· 从头创建 Visual Basic .NE..
· 从头创建 Visual Basic .NE..
· 从头创建 Visual Basic .NE..
· 从头创建 Visual Basic .NE..
· 从头创建 Visual Basic .NE..
· 从头创建 Visual Basic .NE..
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 人才招聘
网站合作、内容监督、商务咨询:QQ: 9576619
Copyright ? 2005--2008 中国建站之家版权所有
未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
免责申明:中国建站之家(www.jz123.cn)上的所有提供下载的软件和资源
均来源于网络,为软件或程序作者提供和网友推荐收集整理而来,仅供学习
和研究使用。如有侵犯你的版权,请立即联系我们,本站将在3个工作日内删除。
粤ICP备05092265号