怎么改变ListCtrl某一行指定列的字体颜色
1个回答
展开全部
可使用windows.h库里的SetConsoleTextAttribute函数。SetConsoleTextAttribute是API设置控制台窗口字体颜色和背景色的函数。广泛应用于电脑编程。
原型
BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
参数
consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE);
GetStdHandle(nStdHandle)是返回标准的输入、输出或错误的设备的句柄,也就是获得输入、输出/错误的屏幕缓冲区的句柄。
例程:
1
2
3
4
5
6
7
8
9
#include <stdio.h>
#include <windows.h>
int main(){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置当前输出为红色
printf("这行文字是红色的!\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE); //设置当前输出为白色
printf("这行文字是白色的!\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE); //设置当前输出为蓝色
printf("这行文字是蓝色的!\n");
return 0;
}
原型
BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
参数
consolehwnd = GetStdHandle(STD_OUTPUT_HANDLE);
GetStdHandle(nStdHandle)是返回标准的输入、输出或错误的设备的句柄,也就是获得输入、输出/错误的屏幕缓冲区的句柄。
例程:
1
2
3
4
5
6
7
8
9
#include <stdio.h>
#include <windows.h>
int main(){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置当前输出为红色
printf("这行文字是红色的!\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_RED|FOREGROUND_BLUE); //设置当前输出为白色
printf("这行文字是白色的!\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE); //设置当前输出为蓝色
printf("这行文字是蓝色的!\n");
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询