PDCurses resize_term任意失败或成功

时间:2013-01-16 17:19:22

标签: c++ resize curses pdcurses

我正在尝试调整我用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将宽度作为第二个参数,而不是第一个)

1 个答案:

答案 0 :(得分:0)

我注意到当它“认为”它可能超出(物理,现实世界)屏幕的界限时,curses不会调整终端的大小。

对于缺乏细节感到抱歉,我不知道这种行为的潜在机制。

编辑
以下是PDCurses文档的引用:

“resize_term()实际上是两个函数:当使用nline和ncols的非零值调用时,尝试将屏幕大小调整为给定大小。[...]”

显然强调“尝试”,但它没有提供任何进一步的信息......