NCURSES:创建没有循环的标题栏
NCURSES: creating a title bar without loops
我想创建一个程序,我可以在其中停止、启动和监视进程及其输出、通知、错误等。可能已经完成,但我还没有找到。
这是我的第一个 ncurses 程序,我遇到了样式问题。我正在读取包含所有初始布局信息的 XML 文件。这将终端分成几个部分。我希望每个部分都有一个标题栏。这将只是 A_REVERSE,或指定的 fg/bg 颜色对。
直到一分钟前我才发现 wattr_on() wattr_off()
函数。这是朝着正确方向迈出的一步。但是我打电话给 wborder()
,我得到了我想要的字符 none。具体来说:
wborder(pwin, '[=13=]', '[=13=]', ' ', '[=13=]', ' ', ' ', '[=13=]', '[=13=]');
我希望 NULL
s 没有字符,而不是默认值。我试图在没有循环的情况下做到这一点。可能吗?
回答
mvwhline(pwin,0,0,' ',xmax);
wprintw(pwin,"%s",sztitle);
mvwchgat(pwin,0,0,-1,A_REVERSE,0,0);
window 边框是 window 边框,不是标题。如果您只想这样做,最好只使用 mvwchgat()
来突出标题。
我想创建一个程序,我可以在其中停止、启动和监视进程及其输出、通知、错误等。可能已经完成,但我还没有找到。
这是我的第一个 ncurses 程序,我遇到了样式问题。我正在读取包含所有初始布局信息的 XML 文件。这将终端分成几个部分。我希望每个部分都有一个标题栏。这将只是 A_REVERSE,或指定的 fg/bg 颜色对。
直到一分钟前我才发现 wattr_on() wattr_off()
函数。这是朝着正确方向迈出的一步。但是我打电话给 wborder()
,我得到了我想要的字符 none。具体来说:
wborder(pwin, '[=13=]', '[=13=]', ' ', '[=13=]', ' ', ' ', '[=13=]', '[=13=]');
我希望 NULL
s 没有字符,而不是默认值。我试图在没有循环的情况下做到这一点。可能吗?
回答
mvwhline(pwin,0,0,' ',xmax);
wprintw(pwin,"%s",sztitle);
mvwchgat(pwin,0,0,-1,A_REVERSE,0,0);
window 边框是 window 边框,不是标题。如果您只想这样做,最好只使用 mvwchgat()
来突出标题。