单下架和下架如何工作?
How does a one-down frame, and a down frame work?
我一直在阅读 one-down frames 和 down frames,我有点困惑,如 :-
a) 它们是什么?
b) progress 如何知道要分配什么帧?
感谢您的帮助:)
一个帧可以有 "down" 次迭代。当写入向下帧的代码迭代时,下一次出现的数据低于前一次。这对于以表格形式轻松呈现数据非常有用。
根据与之关联的块的类型,框架可能会自动成为 DOWN 框架。例如:
define variable i as integer no-undo.
repeat i = 1 to 10:
display i with no-box.
end.
这将导致:
i
──────────
1
2
3
4
5
6
7
8
9
10
REPEAT 块是迭代块,默认(未命名)帧将是向下帧。 (FOR EACH 块也是迭代块)。
DO 块没有迭代,因此如下:
define variable i as integer no-undo.
do i = 1 to 10:
display i with no-box.
end.
结果:
i
──────────
10
如果您的系统非常慢(或通过老式的 1200 波特率调制解调器连接),您可能会看到 space 中的“1”到“10”相互覆盖,最终成为“ 10".
要让 DO 块像 REPEAT 块一样工作:
define variable i as integer no-undo.
do i = 1 to 10:
display i with no-box 10 down.
down. /* advances a down frame to the next line */
end.
“10 down”表示框架将为 10 次迭代保留空间。如果省略“10”,框架将使用屏幕上剩余的 space。
DOWN 语句告诉框架(在本例中为默认的未命名框架)移动到下一行。您也可以说 "down 2." 或 "down 5." 来插入多个空行。
如果你想让一个框架迭代但它不会自动这样做你可能需要添加 "down" 到框架短语(以 "with" 开头的语法)并且可能添加一个明确的DOWN 语句取决于您正在执行的循环的性质。
我一直在阅读 one-down frames 和 down frames,我有点困惑,如 :-
a) 它们是什么? b) progress 如何知道要分配什么帧?
感谢您的帮助:)
一个帧可以有 "down" 次迭代。当写入向下帧的代码迭代时,下一次出现的数据低于前一次。这对于以表格形式轻松呈现数据非常有用。
根据与之关联的块的类型,框架可能会自动成为 DOWN 框架。例如:
define variable i as integer no-undo.
repeat i = 1 to 10:
display i with no-box.
end.
这将导致:
i
──────────
1
2
3
4
5
6
7
8
9
10
REPEAT 块是迭代块,默认(未命名)帧将是向下帧。 (FOR EACH 块也是迭代块)。
DO 块没有迭代,因此如下:
define variable i as integer no-undo.
do i = 1 to 10:
display i with no-box.
end.
结果:
i
──────────
10
如果您的系统非常慢(或通过老式的 1200 波特率调制解调器连接),您可能会看到 space 中的“1”到“10”相互覆盖,最终成为“ 10".
要让 DO 块像 REPEAT 块一样工作:
define variable i as integer no-undo.
do i = 1 to 10:
display i with no-box 10 down.
down. /* advances a down frame to the next line */
end.
“10 down”表示框架将为 10 次迭代保留空间。如果省略“10”,框架将使用屏幕上剩余的 space。
DOWN 语句告诉框架(在本例中为默认的未命名框架)移动到下一行。您也可以说 "down 2." 或 "down 5." 来插入多个空行。
如果你想让一个框架迭代但它不会自动这样做你可能需要添加 "down" 到框架短语(以 "with" 开头的语法)并且可能添加一个明确的DOWN 语句取决于您正在执行的循环的性质。