小编ubu*_*ano的帖子

使用ncurses调整终端和滚动问题的大小

我使用ncurses库在C编程(这是第一次),我有两个问题.我在ubuntu上使用默认终端(gnome终端).

1)我需要调整终端的大小.我使用了resizeter()和resize_term(),但是它们都失败了.

2)我使用scrollok()函数,问题是我丢失了滚动的行(当我回到wscrl()时,有空白行).

#include <ncurses.h>

int main() {

WINDOW *win, *win2;

int i;
char c;

initscr();
cbreak();
noecho();

win=newwin(8,20,1,1);
box(win,0,0);
win2=newwin(6,18,2,2);
scrollok(win2,1);
wrefresh(win);
wrefresh(win);

for(i=0;i<15;i++){
    c=wgetch(win2);
    if(c=='u'){
        wscrl(win2,-1);
        wrefresh(win2);
    }
    else{
        wprintw(win2,"%c\n",c);
        wrefresh(win2);
    }
}

delwin(win);
delwin(win2);
endwin();

return 0;
}
Run Code Online (Sandbox Code Playgroud)

c linux ncurses

6
推荐指数
2
解决办法
9977
查看次数

标签 统计

c ×1

linux ×1

ncurses ×1