按钮和图片,在不可用时,或希望图片变灰色,如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;
}
}
分享到:
相关推荐
本教程将详细讲解两种实现C# WinForm上传图片的方法,并提供源代码供参考和修改,以适应不同类型的文件上传需求。 方法一:使用OpenFileDialog控件 OpenFileDialog是.NET Framework提供的一个内置控件,它允许用户...
在C#编程环境中,Winform应用常常用于创建用户界面,而进制转换是计算机科学的基础概念,涉及到二进制(Binary)、八进制(Octal)、十进制(Decimal)和十六进制(Hexadecimal)之间的数值转换。下面将详细阐述如何...
在C# WinForm开发中,实现PDF到各种格式如图片、HTML、文本的转换是一项常见的需求。本项目提供了一个功能强大的解决方案,无需额外注册,只需下载并安装GhostScript 8.64,然后将其中的`gsdll32.dll`库文件放入应用...
c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制多行文本:自动换行:文本c# winform 绘制...
C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序,代码注释详细 C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序,代码注释详细 C# winform 万能打印模板,可以打印证书,修改...
### C# WinForm 上传图片文件到服务器的方法 在C# WinForm开发中,上传文件尤其是图片文件到服务器是一项常见的需求。本文将详细介绍如何利用C#实现这一功能,并结合提供的部分代码示例进行深入解析。 #### 一、...
本文将深入探讨一个基于C# WinForm的图片管理系统,该系统实现了图片的本地预览、数据库上传以及幻灯片播放功能,是初学者和开发者提升技能的宝贵资源。 首先,我们要理解C# WinForm的基本概念。C#是微软推出的一种...
在IT行业中,C#是一种广泛使用的编程语言,尤其在Windows应用程序...它展示了如何利用.NET Framework提供的工具和API来创建一个实用的桌面应用程序,对于学习C#和图形用户界面设计的初学者来说,是一个很好的实践项目。
本文将深入探讨如何利用C#实现一个WinForm窗体中的图片放大镜功能。这个功能允许用户在界面上自由放大图片,查看图像的细节部分。 首先,我们需要创建一个新的WinForm项目。在Visual Studio中,选择"文件" -> "新建...
在本文中,我们将深入探讨如何使用C# WinForm应用程序实现FTP(文件传输协议)功能,以便进行图片的上传和下载。FTP是一种广泛用于在互联网上交换文件的标准协议,而C# WinForm则提供了用户友好的图形界面来实现这一...
为了解决这个问题,可以使用`Task`或`BackgroundWorker`在后台线程上执行文件读取和图片加载,然后通过事件回调更新UI,这样可以保证用户界面的流畅性。 6. 用户交互:考虑添加一个“打开文件夹”按钮,使用`...
在WinForm中,我们可以创建窗体(Form),并在窗体上添加控件,如按钮、文本框和图片控件。 对于本题中的"图片颜色填充"功能,我们主要关注两个控件:一个是PictureBox,用于显示图片;另一个是Panel,作为绘图区域...
C# WinForm开发框架是一种基于.NET Framework的桌面应用程序开发工具,它为开发者提供了一套完整的控件、设计模式和架构,使得创建具有丰富用户界面的Windows应用程序变得更加便捷和高效。这款框架尤其适合初学者,...
在本文中,我们将深入探讨...开发这样的工具需要对C#编程、WinForm控件、多线程以及图片处理有一定的理解,同时注重用户体验和程序的稳定性和性能。通过不断优化和迭代,我们可以创建出一个高效、易用的图片裁剪工具。
在本示例中,我们专注于使用C# WinForm创建一个功能,该功能能够在线上传、浏览和删除FTP服务器上的图片。WinForm是.NET Framework提供的一种用户界面设计工具,它允许开发者构建桌面应用程序。 FTP(File Transfer...
在C# Winform中,可以通过设置菜单项的背景图片或者自定义控件来实现这一效果,通常需要处理好图片与文字的对齐、透明度等问题,确保菜单的可读性和易用性。 3. **QQ风格菜单**:QQ风格的菜单源自腾讯QQ软件的界面...
通过分析这个“c#winform 图片查看器.zip”项目,开发者不仅可以学习到C# WinForm的基本用法,还能深入了解图像处理、用户交互和软件工程实践等多个方面的知识。这是一个很好的学习和实践平台,有助于提升开发者在...
总的来说,通过C# WinForm的ListView控件,我们可以轻松地实现图片浏览功能,只需合理配置视图、加载图片到ImageList、创建ListViewItem并绑定事件处理,即可为用户提供一个直观、易用的图片查看界面。在实际项目中...
这本书深入浅出地介绍了如何利用C#语言来构建交互式的桌面应用,是学习C#编程基础和WinForm技术的理想资料。 在C#编程语言中,WinForm是用于创建桌面应用程序的框架,它提供了丰富的用户界面元素,如按钮、文本框、...
本资料"200个经典C# WinForm实例源码.rar"是针对C# WinForm编程的一次深度实践,旨在帮助开发者巩固基础,提升技能,并通过实际案例学习OOP(面向对象编程)的思想。 一、C# WinForm基础 C# WinForm是.NET ...