我正在尝试调整使用 PDCurses 打印的终端窗口的大小。它只是有时有效。否则它只是将自己设置为默认大小,甚至不返回错误。
有效尺寸示例:
resize_term(50, 50);
resize_term(100, 100);
resize_term(51, 100);
resize_term(50, 51);
resize_term(2, 60);
无效的尺寸示例:
resize_term(51, 51);
resize_term(51, 50);
resize_term(100, 51);
resize_term(60, 2);
有谁知道为什么这些特定尺寸范围不起作用?
(另外,请记住 resize_term 将宽度作为第二个参数,而不是第一个)
最佳答案
我注意到当它“认为”它可能超出(物理、现实世界)屏幕的边界时,curses 不会调整终端的大小。
抱歉缺少详细信息,我不知道这种行为的潜在机制。
编辑:
这是 PDCurses 文档中的引述:
“resize_term() 实际上是两个函数:当使用 nlines 和 ncols 的非零值调用时,它尝试将屏幕调整为给定大小。[...]”
明显强调了“尝试”,但它没有给出任何进一步的信息......
关于c++ - PDCurses resize_term 任意失败或成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14364041/