C/C++控制台程序怎样实现自动改变控制台窗口的大小 5

我用了SetConsoleScreenBufferSize(hOut,size);函数,其中默认COORDsize={80,25};可是发现改变size大小时,只有比{8... 我用了SetConsoleScreenBufferSize(hOut,size);函数,其中默认COORD size = {80, 25};
可是发现改变size大小时,只有比{80, 25}小时,运行时控制台窗口才会自动调整大小到我所设定的大小,如果我设定的size比{80, 25}大的话,如COORD size = {100, 40};,这时运行程序控制台可以改变成{100, 40},但是不是自动改变,必须手动,请问有什么方法可以让他自动调整?
展开
 我来答
匿名用户
推荐于2018-04-11
展开全部
来设置

用于控制台窗口操作的API函数如下:

GetConsoleScreenBufferInfo 获取控制台窗口信息
GetConsoleTitle 获取控制台窗口标题
ScrollConsoleScreenBuffer 在缓冲区中移动数据块
SetConsoleScreenBufferSize 更改指定缓冲区大小
SetConsoleTitle 设置控制台窗口标题
SetConsoleWindowInfo 设置控制台窗口信息

此外,还有窗口字体、显示模式等控制函数,这里不再细说。下列举一个示例,程序如下:

#include
#include
#include
void main()
{
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
// 获取标准输出设备句柄
CONSOLE_SCREEN_BUFFER_INFO bInfo; // 窗口缓冲区信息
GetConsoleScreenBufferInfo(hOut, bInfo );
// 获取窗口缓冲区信息
char strTitle[255];
GetConsoleTitle(strTitle, 255); // 获取窗口标题
printf("当前窗口标题是:%s\n", strTitle);
_getch();
SetConsoleTitle("控制台窗口操作"); // 获取窗口标题
_getch();
COORD size = ;
SetConsoleScreenBufferSize(hOut,size); // 重新设置缓冲区大小
_getch();
SMALL_RECT rc = ; // 重置窗口位置和大小
SetConsoleWindowInfo(hOut,true ,&rc);
CloseHandle(hOut); // 关闭标准输出设备句柄
}

更多请看

另外,虚机团上产品团购,超级便宜
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式