如何访问控件?

问题描述

我刚刚创建了一个窗口,其中包含一个填充字段 (TestField) 和一个复选框 (chk_TestField):

DEFINE VARIABLE TestField AS INTEGER VIEW-AS FILL-IN.
DEFINE VARIABLE chk_TestField AS LOGICAL VIEW_AS TOGGLE-Box.

更改填充字段的值非常简单,基于复选框的检查,例如:

ON VALUE-CHANGED OF chk_TestField IN FRAME DEFAULT-FRAME
DO:
  TestField = 5.
END.

但是,我有兴趣更改填充字段本身的属性,而不是它代表的整数(我想将填充字段设为只读),我该怎么做?>

我试过了:

ON VALUE-CHANGED OF chk_TestField IN FRAME DEFAULT-FRAME
DO:
  TestField.Read-Only = NOT(chk_TestField).
END.

这显然行不通。

解决方法

ASSIGN TestField:READ-ONLY IN FRAME {&FRAME-NAME} = TRUE.

ASSIGN Table.TestField:READ-ONLY IN FRAME {&FRAME-NAME} = TRUE.