字段后的Informix 4GL

时间:2013-02-14 16:41:58

标签: informix 4gl

您好我想添加一个后场逻辑,我有4个复选框(check1,check2,check3和check4)。当我在check2,check3和check4上勾选复选标记时,我想自动在check1上加上复选标记。任何的想法。谢谢。

2 个答案:

答案 0 :(得分:1)

AFTER FIELD的弱点是它要求你在触发之前离开该场。

使用Genero,当我们多年前添加ON CHANGE语法时,它实现了如果小部件是一个GUI小部件,如CHECKBOX,RADIOGROUP,COMBOBOX,那么在更改时将触发ON CHANGE,而不是当焦点离开场地时。

我们还添加了UNBUFFERED输入模式,这样您的代码就不需要分散所有这些DISPLAY。

您没有说明您正在使用的Informix 4gl版本,但是如果您使用的是Four Js Genero或IBM Informix Genero(正如您所说的复选框那么您可能会),那么答案可能就是......

INPUT ... ATTRIBUTES(UNBUFFERED)
...
    ON CHANGE check2
        LET rec.check1 = "Y"

    ON CHANGE check3
        LET rec.check1 = "Y"

    ON CHANGE check4
        LET rec.check1 = "Y"

答案 1 :(得分:0)

AFTER FIELD check2
    LET rec.check1 = 'Y'
    DISPLAY rec.check1 TO check1

冲洗并重复。我假设输入变量位于记录rec中,名称为check1check4。关键是分配和显示的双重操作;你既需要AFAICR,也不需要“工作”。我可以在这里使用DISPLAY BY NAME rec.check1,但我通常不会使用DISPLAY BY NAME;我可能也会在DISPLAY中包含屏幕记录。但是,在合理的假设下,我写的内容可能会奏效。