PDCurses resize_term произвольно завершается неудачно или успешно
Я пытаюсь изменить размер окна терминала, в котором я печатал, с помощью 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 ответ
Я заметил, что curses не изменяет размеры терминала, когда он "думает", что он может выйти за пределы экрана (физического, реального мира).
Извините за отсутствие деталей, я не знаю основную механику этого поведения.
РЕДАКТИРОВАТЬ:
Вот цитата из документации PDCurses:
"resize_term () - это две функции: при вызове с ненулевыми значениями для nlines и ncols он пытается изменить размер экрана до заданного размера.[...]"
Очевидно, подчеркивается "попытка", но она не дает никакой дополнительной информации...