00. 目录
文章目录
00. 目录01. GetConsoleTitle函数02. SetConsoleTitle函数03. SetConsoleScreenBufferSize函数04. SetConsoleWindowInfo函数01. GetConsoleTitle函数
获取当前控制台标题
函数声明
DWORD WINAPI GetConsoleTitle(_Out_ LPTSTR lpConsoleTitle,_In_ DWORD nSize);功能:获取当前控制台标题参数:lpConsoleTitle 指向缓冲区的指针,该缓冲区接收包含标题的以null结尾的字符串。如果缓冲区太小而无法存储标题,则该函数将存储符合缓冲区的标题字符,以空终止符结束。nSize 指向的缓冲区大小,以字符为单位。返回值:如果函数成功,则返回值是控制台窗口标题的长度(以字符为单位)。如果函数失败,则返回值为零,GetLastError返回错误代码。
参考代码:
char buf[255] = { 0 };//获取当前窗口标题GetConsoleTitle(buf, 255);printf("当前窗口标题为: %s\n", buf);
官方参考网址:/en-us/windows/console/getconsoletitle
02. SetConsoleTitle函数
设置当前控制台窗口标题
函数声明:
BOOL WINAPI SetConsoleTitle(_In_ LPCTSTR lpConsoleTitle);功能:设置当前控制台窗口标题参数:lpConsoleTitle 要在控制台窗口的标题栏中显示的字符串。总大小必须小于64K。返回值:如果函数成功,则返回值为非零值。如果函数失败,则返回值为零。要获取扩展错误信息,请调用GetLastError。
注意: 当进程终止时,系统将恢复原始控制台标题。
参考代码:
SetConsoleTitle("神马程序员");//获取当前窗口标题GetConsoleTitle(buf, 255);printf("当前窗口标题为: %s\n", buf);
官方参考网址:/en-us/windows/console/setconsoletitle
03. SetConsoleScreenBufferSize函数
设置指定控制台屏幕缓冲区的大小。
函数声明:
BOOL WINAPI SetConsoleScreenBufferSize(_In_ HANDLE hConsoleOutput,_In_ COORD dwSize);功能:设置指定控制台屏幕缓冲区的大小。参数:hConsoleOutput 控制台屏幕缓冲区的句柄。句柄必须具有GENERIC_READ访问权限。dwSize 指定控制台屏幕缓冲区的新的大小,在字符行和列。指定的宽度和高度不能小于控制台屏幕缓冲区窗口的宽度和高度。指定的尺寸也不能小于系统允许的最小尺寸。此最小值取决于控制台的当前字体大小(由用户选择)以及GetSystemMetrics函数返回的SM_CXMIN和SM_CYMIN值。返回值:如果函数成功,则返回值为非零值。如果函数失败,则返回值为零。要获取扩展错误信息,请调用GetLastError。
参考代码:
COORD size = {80, 80};//获取标准输出句柄hOut = GetStdHandle(STD_OUTPUT_HANDLE);//设置控制台缓冲区大小SetConsoleScreenBufferSize(hOut, size);
官方参考网址:/en-us/windows/console/setconsolescreenbuffersize
04. SetConsoleWindowInfo函数
设置控制台屏幕缓冲区窗口的当前大小和位置。
函数声明:
BOOL WINAPI SetConsoleWindowInfo(_In_ HANDLEhConsoleOutput,_In_ BOOL bAbsolute,_In_ const SMALL_RECT *lpConsoleWindow);功能:设置控制台屏幕缓冲区窗口的当前大小和位置。参数:hConsoleOutput 控制台屏幕缓冲区的句柄。句柄必须具有GENERIC_READ访问权限。bAbsolute 如果此参数为TRUE,则坐标指定窗口的新左上角和右下角。如果为FALSE,则坐标相对于当前窗口角坐标。lpConsoleWindow 指向SMALL_RECT结构的指针,该结构指定窗口的新左上角和右下角。返回值:如果函数成功,则返回值为非零值。如果函数失败,则返回值为零。要获取扩展错误信息,请调用GetLastError。
参考代码:
COORD size = {40, 20};SetConsoleScreenBufferSize(hOut, size);SMALL_RECT rect = { 0, 0, 40 - 1, 20 - 1 };SetConsoleWindowInfo(hOut, 1, &rect);
官方参考网址:/en-us/windows/console/setconsolewindowinfo