事件发生后,意外帧出现在另一帧上

时间:2016-12-27 07:56:14

标签: progress-4gl openedge

需要删除此问题。它被标记。

1 个答案:

答案 0 :(得分:1)

这段代码使你的框架的“key1”变得敏感。为了敏感,它需要弹出......

所以问题是为什么代码块会执行?你说“我不知道为什么再次调用这个代码”。其他人也不会,因为你已经分享了整个代码中的这么一点点。显然,控制流程正在引导您完成该块,因此您应该努力了解其原因。您可以尝试使用调试器来逐步执行代码,或者可以插入一些旧的MESSAGE语句来深入了解它。

如果你想解决这个问题,你可以在条件逻辑中包含那些代码。定义并设置一个变量,用于确定f选择帧的所需状态,并使用它来控制灵敏度逻辑:

define variable f-shouldBeVisible as logical no-undo.

if .... then
  f-shouldBeVisible = yes.
 else
  f-shouldBeVisible = no.

...

 else
  do:
    if f-shouldBeVisible then
      assign ll-lgst-key1:SENSITIVE in frame f-selection = TRUE
             ll-lgst-key2:SENSITIVE in frame f-selection = FALSE
      .
  end.

当然,这看起来有点愚蠢 - 但它只是一个严重过度简化逻辑的例子。

OTOH如果您足够了解设置变量,您应该能够找出ELSE分支执行的原因。但也许这是有用的第一步。