当前位置:首页 > 编程学习 > C# 图片渐淡切换

C# 图片渐淡切换

编程学习2021-07-2549170


通过Color.FromArgb里的A,也就是透明度的变化来实现图片渐淡切换的效果。

看图:

C# 图片渐淡切换.gif 图片渐淡切换  编程 技术 .NET 第1张


代码很简单,picbox的图片增加透明度,直到完全透明,这样picbox的背景图会渐渐显示出来了。

private void button1_Click(object sender, EventArgs e)
{
    swapImg();
}

private void swapImg()
{
    picbox.BackgroundImage = Properties.Resources.pic2;
    Bitmap pic = (Bitmap)Properties.Resources.pic1.Clone();
    for (int i = 255; i >= 0; i -= 15)
    {
        for (int j = 0; j < pic.Height; j++)
        {
            for (int k = 0; k < pic.Width; k++)
            {
                Color c = Color.FromArgb(i, pic.GetPixel(j, k));
                pic.SetPixel(j, k, c);
            }
        }

        picbox.Image = pic;
        picbox.Update();
        System.Threading.Thread.Sleep(50);
        Application.DoEvents();
    }
    pic.Dispose();
}



Color.FromArgb(Int32, Color)方法

public static System.Drawing.Color FromArgb (int alpha, System.Drawing.Color baseColor);


从指定的Color结构baseColor创建一个新的有透明度的Color,尽管此方法允许为alpha传递32位的值,但该值仅限于8位。



参数

alpha:Int32

新颜色的透明度,有效值为 0 到 255。


baseColor:Color

基于该颜色创造新的颜色。


返回值

Color

返回创建的颜色。




扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://www.apull.net/html/20210725195715.html

分享给朋友:

相关文章

VB.NET 用ShellExecuteEx 打开系统文件属性对话框 模块

VB.NET 用ShellExecuteEx 打开系统文件属性对话框 模块

' ' VB.NET 调用系统文件属性对话框模块 ' ' by: Apull ' QQ:374237545 ' http://www.apull.net ' 2007-6-9 ' ' Imports System.Runtime.InteropServices     Mod...

致面向对象技术初学者的一封公开信

致面向对象技术初学者的一封公开信

 致面向对象技术初学者的一封公开信 Alistair Cockburn 著(1996 年2 月),袁峰 译介绍 首先我要解释一下为什么会写这封公开信。这似乎已经成了一种习惯,但这个步骤还是需要的。过去6 年中, 我曾经无数次地在饭店、酒吧、旅店大厅等各种地方以同一种方式度过愉快而漫长的夜晚:和同样追求真理、光明和智慧的伙伴一起探讨面向对象的真谛。现在,我已经可以回答很多当年我遇到的问题。这些同样的问题也在困扰着我的一位新同事,在一家饭店里,我花了整整一个晚上和他讨...

ASP六大对象介绍

ASP六大对象介绍

Application对象 Application对象是个应用程序级的对象,用来在所有用户间共享信息,并可以在Web应用程序运行期间持久地保持数据。 Application的属性:  方法如下: Application对象没有内置的属性,但是我们可以自行创建其属性。 <% Application("属性名")=值 %>    其实大部分Application变量都 存放在Contents集合中,当你创建一个新的Application变量时,其实...

SetTimer(), KillTimer() 使用

SetTimer(), KillTimer() 使用

SetTimer函数的用法  1 )用WM_TIMER来设置定时器  先请看SetTimer这个API函数的原型  UINT_PTR SetTimer(   HWND hWnd, // 窗口句柄   UINT_PTR nIDEvent, // 定时器ID,多个定时器时,可以通过该ID判断是哪个定时器   UINT uElapse, // 时间间隔,单位为毫秒   TIMERPROC lpTimerFunc // 回调函数   );例如  SetTimer...