refresh 或 wrefresh 子例程
用途
更新终端的显示和 curscr 以反映对窗口所做的更改。
库
Curses 库 (libcurses.a)
语法
描述
刷新 或 刷新 子例程会更新终端和 curscr 以反映对窗口所做的更改。 刷新 子例程将更新 stdscr。 刷新 子例程刷新用户定义的窗口。
其他子例程处理窗口,但不更新终端的物理显示以反映其更改。 在内部窗口表示更改后,使用 刷新 或 刷新 子例程来更新终端的显示。 两个子例程都在显示时检查可能的滚动错误。
注: 在刷新期间,除非启用 莱韦克 (leaveok 子例程) 子例程,否则物理终端光标将保留在窗口光标所在的位置。
刷新 和 刷新 子例程将调用另外两个子例程来执行刷新操作。 首先, Wnoutrefresh (doupdate , refresh , wnoutrefresh 或 wrefresh 子例程) 子例程将指定的窗口结构复制到终端。 然后, 杜普德 (doupdate , refresh , wnoutrefresh 或 wrefresh 子例程) 子例程会更新终端的显示和光标。
参数
| 项 | 描述 |
|---|---|
| 窗口 | 指定要刷新的窗口。 |
示例
- 要更新终端的显示和当前屏幕结构以反映对标准屏幕结构所作的更改,请使用:
refresh(); - 要更新终端和当前屏幕结构以反映对用户定义的窗口所做的更改,请执行以下操作:my_window,使用:
WINDOW *my_window; wrefresh(my_window); - 要将终端恢复到上次刷新时的状态,请使用:
如果终端由于任何原因变得混乱,那么此子例程很有用。wrefresh(curscr);