使用API修改控制台输出的颜色(前景色和背景色)
1、api原型 SetConsoleTextAttribute
BOOL WINAPI SetConsoleTextAttribute(_In_ HANDLE hConsoleOutput, // 控制台输出流句柄_In_ WORD wAttributes // 设置属性 );
hConsoleOutput [输入参数]
控制台屏幕的输出流的句柄(handle to console screen buffer)。
这个文件流的句柄必须有写入(GENERIC_READ)的权限。更多的信息,请查看MSDN上的Console Buffer Security and Access Rights。
wAttributes [输入参数]
具体常见设置属性如下:
属性 | 意义 |
---|---|
FOREGROUND_BLUE | 前景色包含 蓝色 |
FOREGROUND_GREEN | 前景色包含 绿色 |
FOREGROUND_RED | 前景色包含 红色 |
FOREGROUND_INTENSITY | 前景色加强 |
BACKGROUND_BLUE | 背景色包含 蓝色 |
BACKGROUND_GREEN | 背景色包含 绿色 |
BACKGROUND_RED | 背景色包含 红色 |
BACKGROUND_INTENSITY | 背景色加强 |
COMMON_LVB_GRID_HORIZONTAL | 顶部水平网格 |
COMMON_LVB_GRID_LVERTICAL | 左竖直网格 |
COMMON_LVB_GRID_RVERTICAL | 右竖直网格 |
COMMON_LVB_UNDERSCORE | 下划线 |
2、代码测试
#include <windows.h> #include <stdio.h> #include <stdlib.h>int main() { HANDLE hOut; // 获取输出流的句柄hOut = GetStdHandle(STD_OUTPUT_HANDLE); printf("普通颜色看看\n");SetConsoleTextAttribute(hOut, FOREGROUND_GREEN | // 前景色_绿色FOREGROUND_INTENSITY ); // 前景色_加强printf("设置了浅绿色.\n"); printf("并且完了之后就一直是浅绿色\n");SetConsoleTextAttribute(hOut, FOREGROUND_BLUE | // 前景色_蓝色FOREGROUND_INTENSITY | // 前景色_加强COMMON_LVB_UNDERSCORE); // 添加下划线printf("文字蓝色,再加个下划线.\n"); SetConsoleTextAttribute(hOut, FOREGROUND_RED | // 前景色_红色FOREGROUND_INTENSITY | // 前景色_加强BACKGROUND_BLUE ); // 背景色_蓝色printf("设置文字红色,背景蓝色\n"); SetConsoleTextAttribute(hOut, FOREGROUND_RED | // 前景色_红色FOREGROUND_INTENSITY | // 前景色_加强COMMON_LVB_GRID_LVERTICAL );// 网格_左_竖printf(" 加 左 网格\n"); SetConsoleTextAttribute(hOut, FOREGROUND_RED | // 前景色_红色FOREGROUND_INTENSITY | // 前景色_加强COMMON_LVB_GRID_RVERTICAL );// 网格_右_竖 printf(" 加 右 网格\n"); SetConsoleTextAttribute(hOut, FOREGROUND_RED | // 前景色_红色FOREGROUND_GREEN | // 前景色_绿色FOREGROUND_BLUE ); // 前景色_蓝色printf("改回白色\n"); system("pause");return 0; }
例如紫色可以用 蓝色+红色 配出来:
#include <windows.h> #include <stdio.h> // for printf #include <stdlib.h> // for systemint main() { HANDLE hOut; // 获取输出流的句柄hOut = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(hOut, FOREGROUND_RED | // 前景色_红色FOREGROUND_BLUE | // 前景色_蓝色FOREGROUND_INTENSITY);// 加强printf(" 红 + 蓝 = 紫色 ^_^\n"); system("pause");return 0; }
View Code
转载自:Lellansin's 冰森
转载于:https://www.cnblogs.com/lovelp/p/setconsoletextattribute.html
使用API修改控制台输出的颜色(前景色和背景色)相关推荐
- IntelliJ IDEA 自定义控制台输出多颜色格式功能 --- 安装Grep Console插件
IntelliJ IDEA 自定义控制台输出多颜色格式功能 1. 打开IDEA设置面板 2. 点击插件(Plugins)安装Grep Console 3. 重启IDEA后设置颜色 4. 效果图 5. ...
- 探索篇 | C语言改变控制台输出内容颜色
控制台是什么 让代码『跑』起来 当代码执行的时候,会生成一个控制台命令框,把我们想要的内容打印显示.这个窗口我们称之为计算机控制台 命名行界面 cmd 命令提示符 控制台 改变控制台前景色.背景色 只 ...
- 通过控制台输出各种颜色的字符——ANSIConsole、JANSI
默认的jdk控制台只能跟随系统而定,在eclipse中可以定义各种来源的输出颜色,但是如果你想按照的app输出内容到控制台,只能按照前两者来定,而且默认只有黑和err的红,有时候开发中输出的日志信息较 ...
- python中控制台输出的颜色方法
#格式: 设置颜色开始 :\033[显示方式;前景色;背景色m #说明: 前景色 背景色 颜色 --------------------------------------- 40 黑色 41 红色 ...
- Tomcat 修改控制台输出日志级别
叙述 一般在部署Tomcat后,运行久了,catalina.out文件会越来越大,对系统的稳定造成了一定的影响.可通过修改conf/logging.properties日志配置文件来屏蔽掉这部分的日志 ...
- Pycharm的相关配置:改字体样式和大小、更改图片背景、更改控制台输出的字体颜色
文章目录 Pycharm的相关配置:改字体样式和大小.更改图片背景.更改控制台输出的字体颜色 一.pycharm更改字体样式和大小 二.pycharm更改图片背景 三.pycharm更改控制台输出的字 ...
- java控制台输出颜色设置
在java中,控制台输出,System.out.println()显示默认黑色,如果是System.err.println()显示红色. 要想让控制台输出改变颜色,需要做一些设置.就像在linux终端 ...
- C/C++改变控制台的字体颜色
当你接触编程的时候,是不是总是有这种感受:白字黑色的控制台总是很枯燥,正如你用大脑运行这段代码 #include <stdio.h> #include <conio.h> in ...
- 【c++】设置控制台窗口字体颜色和背景色(system和SetConsoleTextAttribute函数 )
编译后弹出的黑框框(exe 可执行文件)总是黑底白字,在做实践大作业时想到尝试改变字体的颜色与背景色,搜索发现有system和SetConsoleTextAttribute两个函数,各有长处,详细了解 ...
最新文章
- 086_html5Input类型
- msm8909相关事宜
- java selenium (十) 操作浏览器
- 软件工程--软件设计
- u2020 华为_华为5G网管U2020常用MML命令(很实用)
- Centos7 +Django的安装
- CS224N刷题——Assignment2.1_TensorflowSoftmax
- easy2game使用教程_Easy2game什么用
- 谭浩强C语言程序设计第五版第七章例题
- ONVIF协议开发使用
- excel游戏_Excel 20190912的娱乐和游戏
- android判断图片是否模糊,Android 图片模糊 性能总结
- eNSP交换机配置IP
- 湖南科技大学EDA作业
- 中标麒麟linux配置网卡,中标麒麟Linux v7系统下设置双网卡bond或team绑定详细过程...
- QN-H618 遥控器复制再生仪(拷贝机)
- openssl建立证书和私钥方法
- 英语单词常见词根总结
- 【Qt】动态刷新lcdNumber显示的值
- 共享出行化解城市交通难题(下)
热门文章
- 如何选择一个男孩儿的英文名字?
- 数据仓库工具之hive(1)
- 【opencv4.3.0教程】07之像素基本操作 1 获取像素指针及控制像素范围
- 解决opencv中cv2.VideoCapture()函数打开USB视频慢的问题
- 学校里学不到的调试技巧(初学者也可以看懂)
- SVN提交出错:Attempted to lock an already-locked dir
- 在废石坑建造!耗时12年花费20亿!奢华AI酒店内部大揭秘
- html文件怎么转换成mp3,HTML 音频
- php拼图游戏开发,原生javascript制作的拼图游戏实现方法详解
- win11操作系统·系统自带计算器找不到了怎么恢复,需要使用新应用以打开此ms-calculator 链接-问题解决