精通COBOL--16.3.4 输出过程中的光标定位
2008-04-29 10:57
246 查看
前面曾讲到,CICS中默认的输出是以当前光标所在位置作为起始位置的。不过,光标的实际位置在程序中也是可以进行更改。若要在程序中更改光标的位置,需要提供更改后光标的位置值。在CICS支持的标准终端屏幕上,光标的位置值如图所示。
由上图可以看出,光标的位置值是一个一维数字,而并非由行数和列数形成的一个二维向量。通常在程序要求中只给出直观的行列数,需要通过计算将其转换为程序中的光标位置值。例如,以下代码将从屏幕中倒数第二行的第一列开始输出相应信息:
IDENTIFICATION DIVISION.
PROGRAM-ID. CURSORPGM.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
……
01 MSG PIC X(80).
*
PROCEDURE DIVISION.
……
MOVE ‘MESSAGE OUTPUT :’ TO MSG.
EXEC CICS SEND CONTROL CURSOR(1760) /*此处为光标定位*/
END-EXEC
EXEC CICS SEND FROM(MSG)
LENGTH(20)
END-EXEC.
……
EXEC CICS RETURN END-EXEC.
GOBACK.
这样,输出信息的位置便可由程序任意指定,而不必受之前光标所在位置的影响了。此外,如果在SEND命令中同时加上ERASE选项,则屏幕将被清屏,光标位置将被刷新。刷新后的光标位置为其初始位置,相应位置值为0。
由上图可以看出,光标的位置值是一个一维数字,而并非由行数和列数形成的一个二维向量。通常在程序要求中只给出直观的行列数,需要通过计算将其转换为程序中的光标位置值。例如,以下代码将从屏幕中倒数第二行的第一列开始输出相应信息:
IDENTIFICATION DIVISION.
PROGRAM-ID. CURSORPGM.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
……
01 MSG PIC X(80).
*
PROCEDURE DIVISION.
……
MOVE ‘MESSAGE OUTPUT :’ TO MSG.
EXEC CICS SEND CONTROL CURSOR(1760) /*此处为光标定位*/
END-EXEC
EXEC CICS SEND FROM(MSG)
LENGTH(20)
END-EXEC.
……
EXEC CICS RETURN END-EXEC.
GOBACK.
这样,输出信息的位置便可由程序任意指定,而不必受之前光标所在位置的影响了。此外,如果在SEND命令中同时加上ERASE选项,则屏幕将被清屏,光标位置将被刷新。刷新后的光标位置为其初始位置,相应位置值为0。
相关文章推荐
- echo的高级用法-颜色输出与光标定位
- 控制台输出光标定位
- 精通COBOL--11.3.2 主调用程序中的调用过程
- echo的高级用法-颜色输出与光标定位
- Memo控件光标定位过程
- echo的高级用法-颜色输出与光标定位
- shell中,echo的颜色输出与光标定位
- linux下c光标定位和输出颜色设置
- 精通cobol--9.9.2 具体查找过程
- 精通COBOL--16.3.2 使用CICS进行输入输出
- 精通COBOL--16.2 CICS编译处理过程
- 精通COBOL--16.3.3 输入过程中的异常处理
- echo的高级用法-颜色输出与光标定位 分类: Ubuntu学习笔记 2015-07-26 22:54 17人阅读 评论(0) 收藏
- linux下c光标定位和输出颜色设置
- 小技巧:如何在Oracle中快速定位到指定对象(表、视图、存储过程等) 【转】
- asp.net 操作带输入输出参数的分页存储过程(—)
- VC下控制台中的光标定位和清屏
- 在存储过程中取得刚刚插入的记录的某个字段,将其输出,由C#接受OUTPUT返回参数
- 网站优化过程中关键词的定位应该通过哪些细节分析
- 存储过程的输出参数,返回值与结果集