专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

关于vb.net drawimage绘图透明度 扭结了好几天了 求指导

发布时间:2011-06-23 14:43:27 文章来源:www.iduyao.cn 采编人员:星星草
关于vb.net drawimage绘图透明度 纠结了好几天了 求指导
刚开始接触vb.net 现在想把一个控件做成渐变效果的,java里graphics2D有设置绘图透明度的方法,请问
vb.net 里有类似方法吗  我不是要把窗体都做成透明的  是想设置drawimage方法的透明度,求指导~
------最佳解决方案--------------------
哦上面的错了,用这个

 Private Function SetOpacity(ByVal B As Bitmap, ByVal D As Double) As Bitmap
        Try
            Dim bmpDATA As New BitmapData
            Dim tmpBMP = New Bitmap(B)
            Dim Rct As Rectangle = New Rectangle(0, 0, B.Width, B.Height)
            bmpDATA = tmpBMP.LockBits(Rct, ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb)
            Dim BTS(bmpDATA.Stride * bmpDATA.Height) As Byte
            Runtime.InteropServices.Marshal.Copy(bmpDATA.Scan0, BTS, 0, BTS.Length - 1)
            Dim T As Double = 0
            For I As Integer = 0 To BTS.Length - 4 Step 4
                T = BTS(I + 3)
                T = T * D
                BTS(I + 3) = T
            Next
            Runtime.InteropServices.Marshal.Copy(BTS, 0, bmpDATA.Scan0, BTS.Length - 1)
            tmpBMP.UnlockBits(bmpDATA)
            Return tmpBMP
        Catch
            Return Nothing
        End Try
    End Function
------其他解决方案--------------------
控件透明度我也纠结了好久,但是没有...
------其他解决方案--------------------
要用到半透明的png文件。
------其他解决方案--------------------
 Private Function SetOpacity(ByVal B As Bitmap, ByVal D As Double) As Bitmap
        Try
            Dim bmpDATA As New BitmapData
            Dim tmpBMP = New Bitmap(B)
            Dim Rct As Rectangle = New Rectangle(0, 0, B.Width, B.Height)
            bmpDATA = tmpBMP.LockBits(Rct, ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb)
            Dim BTS(bmpDATA.Stride * bmpDATA.Height) As Byte
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: