NCURSES 函数简要参考

NCURSES 函数简要参考

BenBear

目录

说明
简介
初始化与结束
基本输入、输出函数预览
函数命名、参数习惯
getch()
窗口 WINDOW
颜色
Panel、Menus 和 Forms
其它
参考资料

说明

  在这里写下对 NCURSES 库使用的经验,希望对你有用。由于条件的不足,
我只是在 WMware Workstation 4.0.5 里安装的 Debian Linux 3.0 r2 下使用
过 NCURSES,所以这里所说的片面性在所难免,还请细查。如有问题,你可以给
我发邮件:[email protected]

简介

  NCURSES 是 Linux 下进行终端界面开发的库,其功能相当强大。它以
WINDOW(窗口)为基本要素,在此基础上支持 Panel、Memus 及 Forms 等更加
强大的元素。更多的信息请参考资料。

初始化与结束

  当然了,为了使用 NCURSES 库,你应该 #include <curses.h>,在编译时,
应该加上 -lncurses。

  在使用 NCURSES 库前,必须先行初始化;用完后必须结束,否则终端可能
会不正常。初始化是一系列的动作,内容有关功能键、输入回显、换行符、颜色
等。

  一般地,第一个函数调用必须是 initscr()。这个函数初始化终端,然后清
屏。它的参数为空,返回值一般也不用管。它会初始化一个叫 stdscr 的变量,
stdscr 有点像 stdin 或 stdout 的地位,它是 NCURSES 默认的窗口。

  紧接着 initscr() 的应该是其它初始化,下面一一介绍。

  即时按键。raw() 和 cbreak() 两个函数都是用来关闭行缓冲以使按键可以
马上被程序处理的。只是 cbreak() 可以在按 Ctrl-C 的时候退出程序,我一般
用这个。两个函数都无参数。

  使用功能键。keypad() 可以用来打开一个窗口的功能键,从来使程序可以
识别 F1、F2、Up、Down 等这样的按键。一般用 keypad (stdscr, TRUE) 来打
开 stdscr 的这项功能。

  按键回显。echo() 和 noecho(),后者可以关闭按键回显,这在使用
getch() 时特别有用。在程序中间,二者可以交替使用。两个函数都无参数。

  换行符。nl() 和 nonl(),用来设置换行是对应一个 '/n' 还是 '/r''/n'。
一般使用默认的就要可以了,所以不需调用。两个函数都无参数。

  启动颜色。has_colors() 返回一个 bool 值,用来表示终端是否支持颜色;
支持则返回真。如果支持颜色,那么就可以用 start_color() 来打开颜色功能。

  终合这些,我的初始化代码一般是:

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

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值