4 curses库基垫(pad)处理

本文介绍了curses库中的基垫功能,基垫是一种可以超出终端屏幕可视范围的窗口,允许进行不受屏幕限制的操作。基垫可以有子基垫,并且大多数窗口操作函数适用于基垫,尽管它们与标准屏幕无直接关联。文章详细讲解了基垫的特性和相关函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4 curses库基垫(pad)处理

~~~~~~~~~~~~~~~~~~~~~~~~


4.1 基垫说明

=============

* 基垫也是一种窗口,它在各方面与WINDOW一样,只是它的大小和位置不再局限于终端屏幕的可视部分.

* 与子窗口类似,基垫也同样有子基垫(subpad)

* 大部分窗口操作的函数都可以直接作用在基垫上,只有少数才是基垫独有的.

* 由于基垫可以完全看不见,这就导致了基垫与WINDOW的一个最主要的差异,即基垫与标准屏幕没有直接关联


4.2 基垫函数说明

=================

/**
 @brief 创建新基垫
 @param lines,cols 指定创建基垫的总行数和总列数
 @return 失败的话,返回NULL
 @note 由于与标准屏幕没有任何关联,因此参数中不需要在标准屏幕中的定位参数
  */
 WINDOW* newpad(int lines,int cols);
 /**
 @brief 创建子基垫
 @param pad 要创建子基垫的父基垫
 @param lines,cols 子基垫的行数和列数
 @param begin_x,begin_y 子基垫左上方在父基垫中的相对位置
  */
 WINDOW* subpad(WINDOW* pad,int lines,int cols,int begin_x,int begin_y);
 /**
 @brief 刷新基垫指定区域
 @param prow,pcol 描述了基垫中需要刷新到标准屏幕中的区域的左上角
 @param sminrow,smincol,smaxrow,smaxcol 指示标准屏幕上显示基垫的矩形区域
 @see   pnoutrefresh() doupdate()
  */
 int prefresh(WINDOW* pad,int prow,int pcol,int simnrow,int smincol,int smaxrow,int smaxcol);


本文出自 “暗日” 博客,请务必保留此出处http://darksun.blog.51cto.com/3874064/1297302

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值