scr_dump , scr_init , scr_restore , scr_set 子例程
用途
文件输入/输出函数。
库
Curses 库 (libcurses.a)
语法
#include <curses.h>
int scr_dump
(const char *filename);
int scr_init
(const char *filename);
int scr_restore
(const char *filename);
int scr_set
(const char *filename);描述
scr_dump 子例程将虚拟屏幕的当前内容以未指定的格式写入由 filename 指定的文件。
scr_restore 子例程将虚拟屏幕设置为 filename指定的文件的内容,该文件必须是使用 scr_dump 子例程编写的。 下一个刷新操作将屏幕恢复到它在转储文件中的查看方式。
scr_init 子例程读取由 filename 指定的文件的内容,并使用这些内容将 Curses 数据结构初始化为终端当前在其屏幕上的内容。 下一个刷新操作将此信息的任何更新作为基础,除非满足以下任一条件:
- 自从将虚拟屏幕转储到 filename之后,已写入终端。
- 针对当前终端定义了 terminfo 功能 rmcup 和 nrrmc。
scr_set 子例程是 scr_restore 和 scr_init 子例程的组合。 它告诉程序,文件名命名的信息 i 是屏幕上当前的内容,也是程序在屏幕上想要的内容。 这可以被认为是屏幕继承函数。
参数
| 项 | 描述 |
|---|---|
| filename |
返回值
成功完成后,这些子例程将返回 "正常"。 否则,将返回 ERR。
示例
对于 scr_dump 子例程:
要将虚拟屏幕的内容写入/tmp/virtual.dump文件,使用:
scr_dump("/tmp/virtual.dump");对于 scr_restrore 子例程:
要从虚拟屏幕中恢复虚拟屏幕的内容,请执行以下操作:/tmp/virtual.dump文件并更新终端屏幕,使用:
scr_restore("/tmp/virtual.dump");
doupdate();