首页 > 解决方案 > COBOL:如何关闭屏幕并返回终端

问题描述

我正在向用户显示一个在屏幕部分中定义的表单。用户输入后,我想清除屏幕并返回终端。但我不知道该怎么做。每隔一个 DISPLAY“某事”将数据放回屏幕的第一行。我不想再使用 SCREEN 了,没有 LINE 语句。

[...]

SCREEN SECTION.
01 USER-FORM.
[...]
01  CLEAR-SCREEN.
    05 BLANK SCREEN.

[...]

DISPLAY USER-FORM.
ACCEPT USER-FORM.
DISPLAY CLEAR-SCREEN.

PERFORM DATA-CALCULATIONS.

DISPLAY "CALCULATION RESULTS 1: " WS-DATA(1).
DISPLAY "CALCULATION RESULTS 2: " WS-DATA(2).
DISPLAY "CALCULATION RESULTS 3: " WS-DATA(3).

标签: cobolgnucobol

解决方案


你不能。在 GnuCOBOL 中使用屏幕后,所有后续的 DISPLAY/ACCEPT 都会显示在屏幕上。

如果您不想为后续的 DISPLAY 显式指定 LINE 和 COL,您可以使用LINE 0extension,它提供类似于通常 DISPLAY 行为的东西(即,LINE 0将 DISPLAY 定位在最后一个 ACCEPT/DISPLAY 之后的行的开头) .

DISPLAY "CALCULATION RESULTS 1: " LINE 0, WS-DATA(1).
DISPLAY "CALCULATION RESULTS 2: " LINE 0, WS-DATA(2).
DISPLAY "CALCULATION RESULTS 3: " LINE 0, WS-DATA(3).

推荐阅读