bcb 从TColor对象中解析出红、绿、蓝的亮度
来源:互联网 发布:做ppt的软件 编辑:程序博客网 时间:2024/04/27 14:52
2001年02月21日 17:10:00
从TColor对象中解析出红、绿、蓝的亮度
使用API函数GetRValue,GetBValue及GetGValue。这里有一个以析取红绿蓝来改变窗口背景色的例子。(注意:在使用下面的例子代码前,请将窗口的Color设为clBlue,clNavy或其它任何一种非系统颜色,诸如clBtnFace)
void __fastcall TForm1::Button1Click(TObject *Sender){ BYTE nRed = GetRValue(Color); BYTE nBlue = GetBValue(Color); BYTE nGreen = GetGValue(Color); nRed +=10; nBlue -=10; nGreen *= 1.05; Color =(TColor) RGB(nRed, nGreen, nBlue); }
注意:Get系列函数返回一个0~255的亮度值。因为单个亮度值为一个字节所以返回类型为BYTE。当你把亮度值设为小于0或大于255时,RGB宏将截去多余的字节(它只取低8位) 。
注意:从技术上讲,这三个Get函数实际上不是函数,它们是C风格的宏。你可以在Include/Win32/wingdi.h中看到它们的实现。使用宏的一个结果是:函数不是类型安全的。你可以将char *传给宏而不会得到任何警告。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=3374
- bcb 从TColor对象中解析出红、绿、蓝的亮度
- 12[红+绿+蓝+Alpha]
- 汇编,实现从键盘输入r,g,b分别将字符的颜色设置为红,绿,蓝
- 红R绿G蓝B
- HTML之变色(蓝、绿、红)
- 如何获取屏幕上各颜色的红、绿、蓝值
- 用c8051f330做的VGA显示器红,绿,蓝,信号源软件源代码
- 如何获取屏幕上各颜色的红、绿、蓝值
- Game Programming with DirectX -- 12[红+绿+蓝+Alpha]
- Game Programming with DirectX -- 12[红+绿+蓝+Alpha]
- java 图像RGB,图像红、绿、蓝、灰 化
- Delphi中TColor转换
- 凉茶的红绿再起冲突
- 从字符串中解析出 [] 内的内容
- 从给定的字符串中解析出邮件地址(以";"分隔)
- 聚来宝获商务部《媒体购物国家标准》制订单位 【2012-12-22 17:04:20】【来源:京华网】【字体:大 中 小】【颜色:红 绿 蓝 黑】【分享新闻】
- 从string中解析出单词
- 从字符串中解析出javascript脚本
- 实现爆炸后的振动效果
- BMP位图文件结构及平滑缩放
- 在 程 序 中 加 入 英 文 朗 读 功 能
- bcb 拷 屏 代 码
- 在C + + Builder 中 显 示 透 明 位 图
- bcb 从TColor对象中解析出红、绿、蓝的亮度
- 在vb中如何区分一个变量值为中文还是英文字母?
- 使用 COM+ 参数化对象结构编程技术
- 详讯:微软承认Outlook中存在严重安全漏洞
- 文件类型探测程序
- 微软.NET平台中类型使用的基本原理
- .NET中的特殊类型成员
- 在C#中使用.NET SDK创建控制
- 全国IP地址分配表(一)