手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

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

来源:互联网 作者:西部数码 时间:2008-04-10
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

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

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!