我正在尝试用C ++编写一个小的roguelike,但我遇到了一个问题 - 为了让游戏正确显示,控制台窗口必须有点宽(大约45行) ,115 cols)。通过右键单击菜单栏并设置具有相同名称的窗口的默认值,可以轻松更改,但有一种方法可以从代码中自动设置它,所以我不必要求潜在用户搞砸?我正在使用Pdcurses来处理输出,如果这有帮助的话。
答案 0 :(得分:1)
但是,不要忘记Windows确实有几个控制台API。从MSDN中的AllocConsole处开始查看概述,或向右跳到SetConsoleWindowInfo。
答案 1 :(得分:1)
这是一个非常古老的问题,但无论如何我会发布我的答案以防将来帮助某人。 这是我在MS Windows中使用的:
int err = system("mode con lines=45 cols=115");
我在调用initscr();
之前直接使用它,它就像一个魅力。
显然,这不是非常便携,但如果您正在开发的是Windows,它就可以解决问题。
答案 2 :(得分:0)
什么操作系统? (因为它是特定于操作系统的)
在Windows SetConsoleWindowInfo()
中答案 3 :(得分:0)
/* Resize the terminal to something larger than the physical screen */
resize_term(2000, 2000);
/* Get the largest physical screen dimensions */
getmaxyx(_window, _rows, _cols);
/* Resize so it fits */
resize_term(_rows - 1, _cols - 1);
/* Get the screen dimensions that fit */
getmaxyx(_window, _rows, _cols);