首页 文章

ncurses - 没有pad的输出

提问于
浏览
1

试图从pad获取输出,但只获得一个空白屏幕 .

#include "curses.h"

int main()
{
    initscr();
    WINDOW *pad = newpad(25, 80);

    wprintw(pad, "Hello, World!\n");
    prefresh(pad, 0, 0, 0, 0, 25, 80);

    wgetch(pad);

    delwin(pad);
    endwin();
}

1 回答

  • 1

    在40x80屏幕上运行,我得到输出("Hello, World!"消息) . 也许你的屏幕只有24x80 . prefresh 调用的参数不能超过屏幕大小,并且由于您未启用滚动( scrollok ), wgetch 会挂起而不显示任何内容 .

    此示例适用于:

    #include <curses.h>
    
    int main(void)
    {   
        initscr();
        WINDOW *pad = newpad(LINES+1, COLS);
    
        wprintw(pad, "Hello, World!\n");
        prefresh(pad, 0, 0, 0, 0, LINES-1, COLS);
    
        wgetch(pad);
    
        delwin(pad);
        endwin();
        return 0;
    }
    

相关问题