在 RPGLE 显示文件中按 Enter 键移动到下一个输入字段
Move to next input field by pressing Enter key in RPGLE display file
我是 rpgle 编程的新手。我想通过按 Enter 键(不按 tab 键)将光标从一个整数输入字段移动到下一个整数输入字段,而不清除 rpgle display [=12 中先前输入的数据=]文件。
请帮助。提前致谢。
你真的不能那样做。
5250 协议是面向block/screen 的协议。这意味着一旦屏幕被发送到设备,在设备 return 控制之前,服务器不在画面中。 Enter
是一个特殊的键,它的唯一作用是return控制服务器。
回到 5250 模拟器刚出来的时候,PC Enter
默认映射到 Field-Exit
键,右下 Ctrl
键映射到 Enter
作为这就是物理 5250 键盘上相应键所在的位置。 Now-a-days,IBM 的 ACS 仿真器对 Enter
使用 Enter
,对 Field-exit
使用 Ctrl+Enter
。
Field-exit
是您正在寻找的行为。
您可以像@nfgl 在评论中提到的那样,为用户模拟您期望的行为。您可以使用 RTNCSRLOC 以便您的程序知道按下回车键时用户光标的位置,然后您的程序使用 DSPATR(PC) 或 CSRLOC 将光标放在下一个字段上,然后再将屏幕发送回设备.您的程序还需要保留以前输入的数据。因此,例如,您的字段需要 input-output 而不是 input-only 字段。并且您需要确保在发送回显示记录之前不要清除显示记录。
我是 rpgle 编程的新手。我想通过按 Enter 键(不按 tab 键)将光标从一个整数输入字段移动到下一个整数输入字段,而不清除 rpgle display [=12 中先前输入的数据=]文件。 请帮助。提前致谢。
你真的不能那样做。
5250 协议是面向block/screen 的协议。这意味着一旦屏幕被发送到设备,在设备 return 控制之前,服务器不在画面中。 Enter
是一个特殊的键,它的唯一作用是return控制服务器。
回到 5250 模拟器刚出来的时候,PC Enter
默认映射到 Field-Exit
键,右下 Ctrl
键映射到 Enter
作为这就是物理 5250 键盘上相应键所在的位置。 Now-a-days,IBM 的 ACS 仿真器对 Enter
使用 Enter
,对 Field-exit
使用 Ctrl+Enter
。
Field-exit
是您正在寻找的行为。
您可以像@nfgl 在评论中提到的那样,为用户模拟您期望的行为。您可以使用 RTNCSRLOC 以便您的程序知道按下回车键时用户光标的位置,然后您的程序使用 DSPATR(PC) 或 CSRLOC 将光标放在下一个字段上,然后再将屏幕发送回设备.您的程序还需要保留以前输入的数据。因此,例如,您的字段需要 input-output 而不是 input-only 字段。并且您需要确保在发送回显示记录之前不要清除显示记录。