`
xiaojiit
  • 浏览: 134189 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

c#winform彩色图片转换灰色,网上资料整理和练习

    博客分类:
  • C#
阅读更多

    按钮和图片,在不可用时,或希望图片变灰色,如QQ的不在线,或按钮不可用。 
     
    按钮设置不可用时,图片的色彩不变,仅文字变灰,不实用。 
     
    窗体中,加入一个图片控件,代替按钮,事件处理方法和按钮是一样的。

        //获取用户列表中的用户头像,并根据在线状态,设置颜色
        private Bitmap getUserHead(Bitmap src, bool isonline)
        {
            if (isonline)
            {//在线
                return src;
            }
            else
            {//离线
                int Height = src.Height;
                int Width = src.Width;
                Bitmap bitmap = new Bitmap(Width, Height);
                Color pixel;
                for (int x = 0; x < Width; x++)
                    for (int y = 0; y < Height; y++)
                    {
                        pixel = src.GetPixel(x, y);
                        int r, g, b, Result = 0;
                        r = pixel.R;
                        g = pixel.G;
                        b = pixel.B;
                        //实例程序以加权平均值法产生黑白图像 
                        int iType = 2;
                        switch (iType)
                        {
                            case 0://平均值法 
                                Result = ((r + g + b) / 3);
                                break;
                            case 1://最大值法 
                                Result = r > g ? r : g;
                                Result = Result > b ? Result : b;
                                break;
                            case 2://加权平均值法 
                                Result = ((int)(0.7 * r) + (int)(0.2 * g) + (int)(0.1 * b));
                                break;
                        }
                        bitmap.SetPixel(x, y, Color.FromArgb(Result, Result, Result));
                    }
                return bitmap;
            }
        }
 
1
2
分享到:
评论

相关推荐

    C#winform上传图片

    本教程将详细讲解两种实现C# WinForm上传图片的方法,并提供源代码供参考和修改,以适应不同类型的文件上传需求。 方法一:使用OpenFileDialog控件 OpenFileDialog是.NET Framework提供的一个内置控件,它允许用户...

    winform c# 进制转换

    在C#编程环境中,Winform应用常常用于创建用户界面,而进制转换是计算机科学的基础概念,涉及到二进制(Binary)、八进制(Octal)、十进制(Decimal)和十六进制(Hexadecimal)之间的数值转换。下面将详细阐述如何...

    c# winform pdf转换各种格式图片html,text

    在C# WinForm开发中,实现PDF到各种格式如图片、HTML、文本的转换是一项常见的需求。本项目提供了一个功能强大的解决方案,无需额外注册,只需下载并安装GhostScript 8.64,然后将其中的`gsdll32.dll`库文件放入应用...

    c# winform 绘制多行文本:自动换行:文本

    c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制...

    C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序

    C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序,代码注释详细 C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序,代码注释详细 C# winform 万能打印模板,可以打印证书,修改...

    C# WinForm 上传图片 文件到服务器的方法

    ### C# WinForm 上传图片文件到服务器的方法 在C# WinForm开发中,上传文件尤其是图片文件到服务器是一项常见的需求。本文将详细介绍如何利用C#实现这一功能,并结合提供的部分代码示例进行深入解析。 #### 一、...

    winForm C#图片管理系统,图片查看软件

    本文将深入探讨一个基于C# WinForm的图片管理系统,该系统实现了图片的本地预览、数据库上传以及幻灯片播放功能,是初学者和开发者提升技能的宝贵资源。 首先,我们要理解C# WinForm的基本概念。C#是微软推出的一种...

    c# winform编写的图片转ico应用程序

    在IT行业中,C#是一种广泛使用的编程语言,尤其在Windows应用程序...它展示了如何利用.NET Framework提供的工具和API来创建一个实用的桌面应用程序,对于学习C#和图形用户界面设计的初学者来说,是一个很好的实践项目。

    C# winform窗体图片放大镜

    本文将深入探讨如何利用C#实现一个WinForm窗体中的图片放大镜功能。这个功能允许用户在界面上自由放大图片,查看图像的细节部分。 首先,我们需要创建一个新的WinForm项目。在Visual Studio中,选择"文件" -&gt; "新建...

    C#winform FTP图片上传下载

    在本文中,我们将深入探讨如何使用C# WinForm应用程序实现FTP(文件传输协议)功能,以便进行图片的上传和下载。FTP是一种广泛用于在互联网上交换文件的标准协议,而C# WinForm则提供了用户友好的图形界面来实现这一...

    C#winform打开图片文件夹列表自动显示

    为了解决这个问题,可以使用`Task`或`BackgroundWorker`在后台线程上执行文件读取和图片加载,然后通过事件回调更新UI,这样可以保证用户界面的流畅性。 6. 用户交互:考虑添加一个“打开文件夹”按钮,使用`...

    C# WinForm 图片颜色填充

    在WinForm中,我们可以创建窗体(Form),并在窗体上添加控件,如按钮、文本框和图片控件。 对于本题中的"图片颜色填充"功能,我们主要关注两个控件:一个是PictureBox,用于显示图片;另一个是Panel,作为绘图区域...

    c#winform开发框架

    C# WinForm开发框架是一种基于.NET Framework的桌面应用程序开发工具,它为开发者提供了一套完整的控件、设计模式和架构,使得创建具有丰富用户界面的Windows应用程序变得更加便捷和高效。这款框架尤其适合初学者,...

    C#winform图片裁剪

    在本文中,我们将深入探讨...开发这样的工具需要对C#编程、WinForm控件、多线程以及图片处理有一定的理解,同时注重用户体验和程序的稳定性和性能。通过不断优化和迭代,我们可以创建出一个高效、易用的图片裁剪工具。

    C# winform 在线上传和浏览FTP服务器图片

    在本示例中,我们专注于使用C# WinForm创建一个功能,该功能能够在线上传、浏览和删除FTP服务器上的图片。WinForm是.NET Framework提供的一种用户界面设计工具,它允许开发者构建桌面应用程序。 FTP(File Transfer...

    C# Winform漂亮菜单

    在C# Winform中,可以通过设置菜单项的背景图片或者自定义控件来实现这一效果,通常需要处理好图片与文字的对齐、透明度等问题,确保菜单的可读性和易用性。 3. **QQ风格菜单**:QQ风格的菜单源自腾讯QQ软件的界面...

    c#winform 图片查看器.zip

    通过分析这个“c#winform 图片查看器.zip”项目,开发者不仅可以学习到C# WinForm的基本用法,还能深入了解图像处理、用户交互和软件工程实践等多个方面的知识。这是一个很好的学习和实践平台,有助于提升开发者在...

    c# winform ListView实现图片浏览

    总的来说,通过C# WinForm的ListView控件,我们可以轻松地实现图片浏览功能,只需合理配置视图、加载图片到ImageList、创建ListViewItem并绑定事件处理,即可为用户提供一个直观、易用的图片查看界面。在实际项目中...

    c# winform电子教程

    这本书深入浅出地介绍了如何利用C#语言来构建交互式的桌面应用,是学习C#编程基础和WinForm技术的理想资料。 在C#编程语言中,WinForm是用于创建桌面应用程序的框架,它提供了丰富的用户界面元素,如按钮、文本框、...

    200个经典C#WinForm实例源码.rar

    本资料"200个经典C# WinForm实例源码.rar"是针对C# WinForm编程的一次深度实践,旨在帮助开发者巩固基础,提升技能,并通过实际案例学习OOP(面向对象编程)的思想。 一、C# WinForm基础 C# WinForm是.NET ...

Global site tag (gtag.js) - Google Analytics