首页 > 解决方案 > 如何逃避更新消息?

问题描述

我在 Progress-4GL 中有以下消息:

DEF VAR L-temp AS CHARACTER.
MESSAGE "Give me information" UPDATE L-temp.

这显示了一条更新消息,这很好,但是当我尝试逃避该消息时(例如,我意识到我点击了错误的按钮,启动了此消息),我无法隐藏该消息:

在此处输入图像描述

我该如何解决这个问题(我只是想从屏幕上删除消息)?我不能添加VIEW-AS ALERT-BOX警报框,只能更新逻辑变量和字段。或者这种情况有简单Show-Dialogbox()的吗?

编辑
我尝试替换UPDATESET并将整个内容视为警报框,但这似乎是不允许的(似乎只允许逻辑变量和字段)。

编辑 2
尝试PROMPT-FOR不是一个好主意,因为这似乎隐藏了窗口的其余部分,而我希望消息在我的窗口/框架的其余部分顶部显示为某种弹出窗口。

编辑 3
似乎也不是 一个System-Dialog好主意,因为我想要的只是得到一个简单的字符串。

标签: openedgeprogress-4gl

解决方案


有点遗憾的是,“关闭窗口”按钮默认情况下不会关闭窗口。即使将框架定义为模态框dialog-box,也window-close需要将事件重新路由到close.

define frame frupdate
   cinfo as char label "Give me information" with side-labels
   with
      title "Message Update"
      view-as dialog-box      
   .

on "window-close" of frame frupdate 
   apply "close" to frame frupdate.
   
enable all with frame frupdate.
wait-for close of frame frupdate.

推荐阅读