2011-02-28 25 views

回答

-1

为了记录在案,我achievd我需要什么用怪异线

system("mode 42,90"); 

这很奇怪,但很简单,而且很有效。

+1

-1,不回答问题,问题明确要求API更改控制台窗口的大小。 'Mode'是一个命令shell命令。 – 2011-03-17 09:59:10

3

将控制台尺寸210 * 50和缓冲,以210 * 2000

COORD s = { 210, 2000 }; 
SMALL_RECT sr = { 0, 0, 209, 49 }; 
CONSOLE_SCREEN_BUFFER_INFO sbi = { 0 }; 
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &sbi); 
SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE), s); 
if ((sbi.srWindow.Right - sbi.srWindow.Left) != (sr.Right - sr.Left)) { 
    SetConsoleWindowInfo(GetStdHandle(STD_OUTPUT_HANDLE), TRUE, &sr); 
} 
+0

该代码添加了滚动条,但窗口仍然是25x80 – Andrei 2011-02-28 18:09:18

+0

这意味着SetConsoleWindowInfo调用失败,可能是因为窗口无法放在显示器上。尝试将其降至例如100x40。 – Erik 2011-02-28 19:49:05