走近VB.Net(十一) 随心所欲窗体外观(skin精彩…

2008-04-10 03:08:11来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

lbpre.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

Public Sub lbExit_MouseDown(ByVal sender As Object, ByVal e As System.WinForms.MouseEventArgs) Handles lbExit.MouseDown

lbExit.BackColor = system.drawing.Color.Blue ''''设置颜色

lbExit.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

Public Sub lbShow_MouseDown(ByVal sender As Object, ByVal e As System.WinForms.MouseEventArgs) Handles lbShow.MouseDown

lbshow.BackColor = system.drawing.Color.Blue ''''设置颜色

lbshow.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

Public Sub lbpre_MouseUp(ByVal sender As Object, ByVal e As System.WinForms.MouseEventArgs) Handles lbpre.MouseUp

lbpre.BackColor = system.drawing.Color.Black ''''设置颜色

lbpre.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

Public Sub lbExit_MouseUp(ByVal sender As Object, ByVal e As System.WinForms.MouseEventArgs) Handles lbExit.MouseUp

lbExit.BackColor = system.drawing.Color.Black ''''设置颜色

lbExit.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

Public Sub lbShow_MouseUp(ByVal sender As Object, ByVal e As System.WinForms.MouseEventArgs) Handles lbShow.MouseUp

lbshow.BackColor = system.drawing.Color.BLack ''''设置颜色

lbshow.ForeColor = system.Drawing.Color.AliceBlue ''''设置颜色

End Sub

''''下面是鼠标离开_MouseLeave时发生的事件了

Public Sub lbShow_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbShow.MouseLeave

lbshow.BackColor = system.drawing.Color.BlanchedAlmond ''''设置颜色

lbshow.ForeColor = system.Drawing.Color.Black ''''设置颜色

End Sub

Public Sub lbExit_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbExit.MouseLeave

lbExit.BackColor = system.drawing.Color.BlanchedAlmond ''''设置颜色

lbExit.ForeColor = system.Drawing.Color.Black ''''设置颜色

End Sub

Public Sub lbpre_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles lbpre.MouseLeave

lbpre.BackColor = system.drawing.Color.BlanchedAlmond ''''设置颜色

lbpre.ForeColor = system.Drawing.Color.Black ''''设置颜色

End Sub

End Class

''''###################################################################################################################

''''!!!0001!!!04!!!26!!!!!!

''''建议不要修改此模块 以免产生不必要的错误(此代码已相当完美) 如欲修改请先备份 _______VB.Net中文站 hejianzhong

''''此模块可真接粘贴到您的程序中使用。

''''不要删除此信息,我免费为您提供此代码,想得到的回报就是最起码的尊重,虽然最终用户并不能看到,我仍感到欣慰

''''!!!0001!!!04!!!26!!!!!!

Public Module SKin

Public Rect1 As New Rectangle(0, 0, 0, 0)

Public Region1 As New System.Drawing.Region(Rect1)

Public Sub SkinRegion(ByVal SKform As Form, Optional ByVal skinNaSKform As String = Nothing)

Dim X, Y, transPix, opaciPix, BgWidth, BgHeight As Integer

Dim rect2 As New Rectangle()

Dim FirARGB As Integer = getpixel(SKform, 1, 1)

Dim Region1 As New System.Drawing.Region(Rect1)

Rect1 = Nothing

''''SKform.Visible = False

If skinnaSKform <> Nothing Then SKform.BackgroundImage = SKform.BackgroundImage.FromFile(System.WinForms.Application.StartUpPath & "\" & skinNaSKform & ".gif")

BgWidth = SKform.BackgroundImage.Width

BgHeight = SKform.BackgroundImage.Height

SKform.Height = BgHeight

SKform.Width = BgWidth

For Y = 1 To BgHeight - 1 ''''这里参考了VB6中的扫描方法,请参考相关资料

X = 0

Do

X = X 1

While (getpixel(SKform, X, Y) = FirARGB) And (X < BgWidth)

X = X 1

End While

transPix = X

While (getpixel(SKform, X, Y) <> FirARGB) And (X < BgWidth)

X = X 1

End While

opaciPix = X - 1

If transPix <= opaciPix Then

rect2 = rect2.FromLTRB(transPix - 1, Y - 1, opaciPix, Y)

Region1.Union(rect2)

rect2 = Nothing

End If

Loop Until X >= BgWidth

Next Y

SKform.Region = Region1

SKform.Refresh()

''''SKform.Visible = True

End Sub

Public Function Getpixel(ByVal SKform As Form, ByVal x As Integer, ByVal y As Integer) As Integer

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:走近VB.Net(十) 播放声音文件

下一篇:用VISUAL BASIC5.0创建Active