图片上部分操作区域的确定和在区域上单击事件的处理.

1.如果我们想用图片美化我们的程序.

2.有些特定的窗口,在不同的显示器分辨率下,按钮控件会出现缩小或者放大的情况,

这样就会影响程序的美观,如果我们用图片的区域来实现按钮的同样的功能,这样就可以解决不同分辨率的问题.

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

下面的例子实现了这一功能.

图片是设计是的样子,通过三个Label得到我们需要的位置,将它们放到我们的图片上,盖住图片上与其对应的部分.



PICbtnDesingerTime.jpg

None.gif 得到我们设定的图片区域,返回我们规定到的整数
ExpandedBlockStart.gifContractedBlock.gif    
Private   Function GetMouseLocation() Function GetMouseLocation(ByVal X As IntegerByVal Y As IntegerAs Integer
InBlock.gif
InBlock.gif        
'用我们设计好的label来确定区域,当然你也可以自己写区域
InBlock.gif
        Dim rect1 As New System.Drawing.Rectangle(lblSetDomain.Location, lblSetDomain.Size)
InBlock.gif        
Dim rect2 As New System.Drawing.Rectangle(lblOK.Location, lblOK.Size)
InBlock.gif        
Dim rect3 As New System.Drawing.Rectangle(lblCancel.Location, lblCancel.Size)
InBlock.gif
InBlock.gif        
If rect1.Contains(X, Y) Then
InBlock.gif            
Return 1
InBlock.gif        
ElseIf rect2.Contains(X, Y) Then
InBlock.gif            
Return 2
InBlock.gif        
ElseIf rect3.Contains(X, Y) Then
InBlock.gif            
Return 3
InBlock.gif        
Else
InBlock.gif            
Return 0
InBlock.gif        
End If
ExpandedBlockEnd.gif    
End Function

None.gif
None.gif    
' 当鼠标移动到我们设定的图片区域时
ExpandedBlockStart.gifContractedBlock.gif
     Private   Sub pbxLogin_MouseMove() Sub pbxLogin_MouseMove(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgs) Handles pbxLogin.MouseMove
InBlock.gif        
Select Case GetMouseLocation(e.X, e.Y) '得到特定的图片区域
InBlock.gif
            Case 0
InBlock.gif                
'改变鼠标的形状
InBlock.gif
                Me.Cursor = Cursors.Default
InBlock.gif            
Case Else
InBlock.gif                Me.Cursor 
= Cursors.Hand
InBlock.gif        
End Select
ExpandedBlockEnd.gif    
End Sub

None.gif
None.gif    
' 在图片选择区域鼠标松开时
ExpandedBlockStart.gifContractedBlock.gif
     Private   Sub pbxLogin_MouseUp() Sub pbxLogin_MouseUp(ByVal sender As ObjectByVal e As System.Windows.Forms.MouseEventArgs) Handles pbxLogin.MouseUp
InBlock.gif        
Select Case GetMouseLocation(e.X, e.Y)
InBlock.gif            
'添加你的代码在这里
InBlock.gif
        Case 1
InBlock.gif                
'添加你的代码
InBlock.gif
            Case 2
InBlock.gif                
'添加你的代码
InBlock.gif
            Case 3
InBlock.gif                
'添加你的代码
InBlock.gif
        End Select
ExpandedBlockEnd.gif    
End Sub

None.gif


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值