Функции рисования границ, кажется, просто не рисуют верхнюю и нижнюю границы должным образом, когда ширина окна превышает 8. Как предупреждение, я использую KiTTY для SSH на сервере Arch Linux.
Я новичок в ncurses, так что есть большая вероятность, что я делаю что-то не так, но из того, что я прочитал, это должно быть правильно ...
#include <ncurses.h>
int main() {
initscr(); cbreak();
WINDOW *win = newwin(1,1, 1,1);
for(int i=1; i < 16; ++i) {
wresize(win, i, i);
wclear(win);
box(win, 0,0); // I've also tested wborder()
wrefresh(win);
mvprintw(0,0, "size: %i", i);
getch(); //pause
}
endwin();
return 0;
}
Запуск этого кода, вот что я вижу:
size: 8
+------+
¦ ¦ Displays like this (normally)
¦ ¦ for both top and bottom borders
¦ ¦
¦ ¦
¦ ¦
¦ ¦
+------+
size: 9
+-+
¦ ¦ Each size up it will continue
¦ ¦ to look like this, with the
¦ ¦ top and bottom borders looking
¦ ¦ like `+-+`
¦ ¦
¦ ¦
¦ ¦
+-+