SetSysColors 修改系统颜色
首先我们来看一下SetSysColors函数的原型:
BOOL WINAPI SetSysColors(
__in int cElements, //要改变的对象的数量
__in const INT* lpaElements, //按引用传递。这是一个整数数组(总共包含cElements个元素)。每个条目都包含了一个常量,指定一个windows显示对象。
__in const COLORREF* lpaRgbValues //按引用传递。这是RGB值数组,该数组用于设置lpSysColor数组中的对象颜色
);
我们编写源代码:
int aiElements[] =
{
COLOR_BACKGROUND,
COLOR_DESKTOP,
COLOR_ACTIVEBORDER,
COLOR_ACTIVECAPTION,
COLOR_WINDOW
}; DWORD aColors[] =
{
RGB(, , ),
RGB(, , ),
RGB(0x80, 0x00, 0x80),
RGB(0x00, 0x80, 0x80),
RGB(0xC0, 0xC0, 0xC0),
}; SetSysColors(, aiElements, aColors);
SetSysColors的lpaElements可以取值为:
-------------------------------------------------------------------------------------
COLOR_3DLIGHT 以亮色显示时立体元件的颜色
COLOR_3DSHADOW 立体元件的阴影颜色
COLOR_BTNSHADOW 按钮阴影颜色
COLOR_ACTIVEBORDER 边界颜色
COLOR_ACTIVECAPTION 标题颜色
COLOR_BACKGROUND 背景颜色
COLOR_BTNTEXT 按钮颜色
COLOR_CAPTIONTEXT 窗口拦字符颜色
COLOR_GRAYTEXT 灰色显示的文本的颜色
COLOR_DESKTOP 桌面的颜色
COLOR_HIGHLIGHT 选定项的背景颜色
COLOR_HEGHLIGHTTEXT 选定项的字符的颜色
COLOR_MENUTEXT 菜单栏的颜色
COLOR_INFOTEXT 工具提示的文本的颜色
COLOR_INFOBK 工具提示的背景的颜色
COLOR_INACTIVECAPTIONTEXT 非活动标题栏中文本的颜色
COLOR_INACTIVECAPTION 非活动标题栏的颜色
COLOR_INACTIVEBORDER 非活动边界的颜色
COLOR_WINDOWTEXT 窗口字符的颜色
COLOR_WINDOWFRAME 窗口边框的颜色
COLOR_WINDOW 窗口背景颜色
COLOR_SCROLLBAR 滚动条的颜色
COLOR_3DHILIGHT 立体元件高亮显示时的颜色
COLOR_3DHIGHLIGHT 立体元件高亮显示时的颜色
COLOR_3DFACE 立体显示的元件的表面的颜色
COLOR_BTNFACE 立体显示的元件的表面的颜色
COLOR_3DDKSHADOW 立体显示的元件的阴影的颜色
SetSysColors 修改系统颜色的更多相关文章
- EBS 修改系统颜色
1)修改 配置文件: Java 色彩设计,选择相应的颜色 2)清理高速缓存 注:如果不清理缓存,则要等15分钟后才显示变成新设定的颜色
- android 修改系统的dialog样式
android 修改系统的dialog样式 一.觉得自定义配置文件麻烦?那就来修改系统自定义XML文件来实现修改系统dialog的样式吧. 如果是在XML中样式:首先来说下样式. 在 Style.x ...
- Android修改状态栏颜色全方位教程
关键字:状态栏着色 透明状态栏 沉浸式 白底黑字 Github Demo:https://github.com/imflyn/Eyes 参考文章: Android-transulcent-status ...
- Linux下修改系统编码的操作记录
Linux系统安装后,发现中文显示乱码.因为系统编码为en_US.UTF-8,应改为支持中文的编码(即zh_CN.UTF-8)操作记录如下:1)检查linux的系统编码检查linux的系统编码,确定系 ...
- Android NumberPicker 修改分割线颜色和高度及字体颜色大小
(1)重写NumberPicker已达到修改显示字体颜色大小 public class TextColorNumberPicker extends NumberPicker { public Text ...
- iOS开发——运行时OC篇&使用运行时获取系统的属性:使用自己的手势修改系统自带的手势
使用运行时获取系统的属性:使用自己的手势修改系统自带的手势 有的时候我需要实现一个功能,但是没有想到很好的方法或者想到了方法只是那个方法实现起来太麻烦,一或者确实为了装逼,我们就会想到iOS开发中最牛 ...
- 在 Xen 虚拟机下修改系统当前时间
在 Xen 虚拟机下修改系统当前时间 Xen 虚拟机默认不允许不同的虚拟机使用不同的系统时间,因此所有虚拟机的系统时间都会同宿主机的系统时间严格同步,用 date 命令修改虚拟机系统时间时虽然提示成功 ...
- Linux永久修改系统时间和时区方法
修改时区: 1> 找到相应的时区文件 /usr/share/zoneinfo/Asia/Shanghai 用这个文件替换当前的/etc/localtime文件. 或者找你认为是标准时间的服务器, ...
- linux下修改系统时间
一.查看时间: [root@localhost ~]# date2016年 11月 19日 星期六 12:46:37 CST 二.修改时间,修改系统时间 [root@localhost ~]# dat ...
随机推荐
- 给MySQL增加mysql-udf-http和mysql-udf-json自定义函数,让MySQL有调用http接口和查询直接回JSON的能力
1.安装mysql-udf-httpyum install -y libcurl*下载地址:http://pan.baidu.com/s/1nuYZqR3tar zxvf mysql-udf-http ...
- HTML5 meta最全使用手册
1.声明文档使用的字符编码 <meta charset='utf-8'> 2.声明文档的兼容模式 <meta http-equiv="X-UA-Compatible&quo ...
- PHP伪静态
伪静态 从形式上看是一个静态地址,实际上还是访问的动态地址, 比如:访问:http://www.abc.com/news-sport-id123.html 实际上是:http://www.abc.co ...
- activity跳转到新的activity后清除之前的activity
Intent intent = new Intent(A.this, B.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Inten ...
- log4j详解(二)
在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Appender及Layout的分别使用.Log4j支持两种配置文件格式,一种是XML格式的文件,一 ...
- Myeclipse使用DB Browser连接数据库错误:OPTION SQL_SELECT_LIMIT=DEFAULT
虽然使用Myeclipse,经过test driver可以使用, 但是不能够查询mysql数据库各个表的数据. 百度了下, 原来是驱动mysql的插件版本很低,重新下了个, 可以了. 下面是链接. ...
- DoModal时带出次级窗口闪现
最近在做MFC 界面开发. 在一个CDialog窗口DoModal模态显示时, 会将次级窗口带出闪现(比如将一个窗口active, 然后点击我现在程序需要弹框的按钮,弹出弹出正常,但原来active的 ...
- 使用PowerShell读取SharePoint里列表的内容
1. 在https://www.microsoft.com/en-us/download/details.aspx?id=42038这里下载SharePoint Online Client Compo ...
- 手机端布局rem 与vm的使用
手机端原来的时候,在项目中使用js判断出html的字体,然后根据rem设置字体,但是js本着少用的原则,考虑用vm,vh等(顺带说一句,vm vh是网页可视区域宽度 高度 即浏览器宽度减去约16px) ...
- 使用 PHP 过滤器(Filter)进行严格表单验证
PHP 过滤器(Filter)用于验证和过滤来自非安全来源的数据,比如用户的输入,使用过滤器扩展可以使数据过滤更轻松快捷.要求的 PHP 版本是 PHP 5 >= 5.2.0,PHP 7 和 F ...