FillConsoleOutputAttribute 函数--指定区域填充控制台输出属性

FillConsoleOutputAttribute函数

来源:https://msdn.microsoft.com/en-us/library/windows/desktop/ms682663(v=vs.85).aspx

作用

设置固定区域内的文本属性,从指定的控制台屏幕缓冲区字符坐标开始。

语法

BOOL WINAPI FillConsoleOutputAttribute(
  _In_  HANDLE  hConsoleOutput,
  _In_  WORD    wAttribute,
  _In_  DWORD   nLength,
  _In_  COORD   dwWriteCoord,
  _Out_ LPDWORD lpNumberOfAttrsWritten
);

##参数 **hConsoleOutput** 控制台屏幕缓冲区的句柄。 **wAttributes** 用一个字节的WORD来指定背景颜色和文本颜色。[点击此处查询文本属性](http://www.cnblogs.com/X-Jun/p/6925500.html) **nLength** 指定以字符为单位、要填充格式的字符个数。(从左往右) **dwWriteCoord** 使用一个 COORD 来指定要填充的控制台屏幕缓冲区起始坐标。 **lpNumberOfAttrsWritten** 指针指向 DWORD 变量,返回实际设置文本属性的字符个数。
##返回值 如果函数操作成功,返回值为非零值 如果函数操作失败,返回值为零。
##注意 (1)如果填充的位置达到行末,接下来将会从下一行的行首继续开始填充; (2)不应该先填充后输出,因为输出时的文本属性会覆盖填充时设置的文本属性。
##头文件 Wincon.h(包括Windows.h)
##示例 ```cpp #include #include int main() { HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); WORD wd = FOREGROUND_RED | FOREGROUND_BLUE; DWORD written; COORD pos = {0, 0}; printf("Hello World!\n"); FillConsoleOutputAttribute(hOut, wd, 12, pos, &written); //这句话不能放在printf的上面 CloseHandle(hOut); getchar(); } ``` 效果如图所示 ![](http://images2015.cnblogs.com/blog/1172605/201705/1172605-20170531191324305-1485572071.png)
posted @ 2017-05-31 19:28  X_Jun  阅读(888)  评论(0编辑  收藏  举报
levels of contents