首页 | Linux | 论坛 | 精华 | 博客 | 资料 | 手册 | 知识库 | 下载 | 人才 | 沙龙 | 搜索 | 登录 | 注册  
下载分类
操作系统
系统相关
网络互连
开发工具
应用程序
多媒体工具
游戏娱乐
资料视频
本类周下载TOP10
本类总下载TOP10
您的位置:自由软件库->开发工具->库文件->ncurses

首字母搜索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


软件名称: ncurses
授权方式: GPL
操作系统: Linux,FreeBSD,UNIX,i386,x86_64
软件大小: 2826473b
最新更新: 2011-12-22 15:20:41
软件简介:

Ncurses是一个能提供功能键定义(快捷键),屏幕绘制以及基于文本终端的图形互动功能的动态库。

Ncurses是一个能提供基于文本终端窗口功能的动态库. Ncurses可以:

    只要您喜欢,您可以使用整个屏幕
    创建和管理一个窗口
    使用8种不同的彩色
    为您的程序提供鼠标支持
    使用键盘上的功能键

Ncurses可以在任何遵循ANSI/POSIX标准的UNIX系统上运行,除此之外,它还可以从系统数据库中检测终端的属性, 并且自动进行调整,提供一个不受终端约束的接口.因此,Ncurses可以在不同的系统平台和不同的终端上工作的非常好.

mc工具集就是一个用ncurses写的很好的例子,而且在终端上系统核心配置的界面同样是用ncurses编写的.

NCURSES库简介在使用电传终端作为计算机输出设备的那个年代,电传终端是和计算机分开放置的,并通过串行电缆连接。终端的配置通过发送一系列字节完成。所有的终端控制操作:改变光标在屏幕上的位置,清除屏幕某一区域的内容,屏幕滚动,切换显示模式,给文字添加下划线,改变字符的外观、颜色、亮度等等,也是通过这样一系列字节实现的。由于这些连续的控制字节以一个转义字符“0x1B”(即ESC键)作为起始字节,所以这种控制序列叫做转义序列。即使在当今,我们也可以向终端仿真程序发送转义序列,得到和当年电传打字终端相同的显示效果。

假设你想在终端(或终端仿真窗口)输出一段彩色的文字,可以将以下这段转义序列输入到你的字符控制台(或控制台窗口):
echo "^[[0;31;40mIn Color"           

在这里 “^[” 就是所谓的转义字符。(注意:“^[” 是一个字符,不是依次键入“^”和“[”字符。要输出“^[”,必须按下Ctrl-V再按下ESC键)执行以上的命令,就应该可以看见“In Color”变为红色了(译者注:试更改转义字符各分号间的参数,看看会有什么结果)。以后输出的文本信息都是这样的效果。 如果想返回原来的颜色设置可以使用以下的命令:
echo "^[[0;37;40m"                  

现在体会到这些神奇字符(转移序列)的作用了吗?然而这些奇怪的字符是不是很难理解呢?并且有时相同的转义序列在不同的终端上会有不同的显示结果。因此,UNIX的设计者发明了一种叫做 termcap的机制。
termcap是一个列出特定终端的所有功能的文本文件,并且给出了实现对应功能的转义序列。然而在这种机制发明后的几年中,逐渐被terminfo机制取代。程序员使用terminfo时不用花过多的时间查阅termcap。只需让程序查询terminfo的数据库就可得到控制字符,并将其发送到终端或终端仿真程序。
1.1 NCURSES是什么?
你可能会疑惑,引入的这些技术术语是什么。假设在使用termcap或者terminfo的情况下,每个应用程序都在访问terminfo数据库并且做一些必要的处理(比如发送控制字符等等)。不久这些操作的复杂度将会变得难以控制。于是,curses诞生了。curses 的命名是来自一个叫做 “cursor optimization”(光标最优化)的双关语(译者注:curses本身有诅咒的意思)。curses构成了一个工作在底层终端代码之上的封装,并向用户提供了一个灵活高效的API(Application Programming Interface 应用程序接口)。它提供了移动光标,建立窗口,产生颜色,处理鼠标操作等功能。使程序员编写应用程序不需要关心那些底层的终端操作。

那么ncurses又是什么?ncurses是最早的System V Release 4.0 (SVr4)中 CURSES的一个克隆。这是一个可自由配置的库,完全兼容旧版本的curses。简而言之,它是一个管理应用程序在字符终端显示的函数库。当后面提到curses的时候,同时也可以和NCURSES互换。
关于ncurses详细的更新历史可以查阅ncurses源代码分发包中的NEWS文件。Thomas Dickey是目前的维护人员。你可以通过bug-ncurses@gnu.org联系维护人员
1.2 我们可以用NCURSES做什么?
ncurses不仅仅封装了底层终端功能,而且提供了一个相当稳固的工作框架(Framework)可以在字符模式下产生美观的界面。它提供了一些创建窗口的函数。而它的姊妹库 Menu、Panel和Form则对curses基础库及进行了扩展。这些扩展库通常都随同curses一起发行。我们可以建立一个同时包含多个窗口(multiple windows)、菜单(menus)、面板(panels)和表单(forms)的应用程序。窗口可以被独立管理,例如让它滚动或者隐藏。
 
菜单(Menus)可以让用户建立命令选项,方便用户执行命令。而表单(Forms)允许用户建立一些简单的数据输入和输出的窗口。面板(Panels)是ncurses窗口管理功能的扩展,可以用它覆盖或堆积窗口。

 

相关论坛: 下载频道交流区 讨论区
立即下载

ncurses-5.4-20050319-patch.sh.bz2
ncurses-5.4.tar.gz
ncurses-5.5.tar.gz
ncurses-5.6.tar.gz
ncurses-5.5-r3.tbz2
ncurses-5.7.tar.gz
ncurses-5.9.tar.gz
ncurses-5.6-coverity.patch.gz

 Linux最新资讯更多>> 
·Evernote推进入华节奏:
·桌面操作系统 4 月最新
·Linux基金会:Linux成B
·中国联通升级HSPA+网络
·联通“随意打”论战:绝
·阿里巴巴集团30亿美元贷
·要以扫黄打非的精神进行
·内核源码,ARM架构上的
·Ubuntu 10.04版本企业云
·企业级Linux三国鼎立 与
·开源图像软件GIMP开发者
·不给Source就捣蛋?谈G
 IT最新资讯更多>> 
·大连外企500强急招java
·(内部推荐)EMC-Princ
·(内部推荐)EMC-greenpl
·页游公司招聘:运维开发
·赶集移动部门招聘前端开
·【北京】知名软件公司招
·有莫有C++ and C# and
·下班路上捡到一张工资表
·猎头代招:北京大型上市
·DSI猎头代招:华为-IP部
·上海诚聘JAVA工程师
·微软和苹果10大失败产品
·Darl McBride离开领导岗
·提升Qt的应用诺基亚即将
 综合:更多>> 
·PHP中strtotime函数使用
·五个常见 PHP数据库问题
·初探PHP单元测试利器:
·PHP开发人员容易忽略的
·逃离伪PHP程序员应该做
·大型Web应用运行时 PHP
·PHP企业级应用缓存技术
·PHP应用提速面面观
·用书签查询网站pr值
·PHP句法规则详解
·阴历-农历-转换类
·PHP定时执行任务的实现
·几种有用的变型 PHP中循
·PHP如何修改Linux或Uni
·PHP中全面阻止SQL注入式
·分享几个非常有用的PHP
·PHP面向对象法则
·优化PHP程序的方法
·orcale queue
·谁可以推荐几本经典的操
关于我们 | 联系方式 | 广告合作 | 诚聘英才 | 网站地图 | 友情链接 | 免费注册

Copyright © 2001-2006 ChinaUnix.net All Rights Reserved

感谢所有关心和支持过ChinaUnix的朋友们

京ICP证041476号