如何在没有用户干预的情况下自动关闭警告框

How to auto close a alert box without user intervention

如何在没有用户干预的情况下自动关闭警告框。

想以编程方式关闭警告框。

你不能。您将必须使用计时器实现自己的对话。您构建的对话框必须适合您的 UI:ABL GUI、GUI for .NET 或 TTY

我会假设它是 Windows,否则 Mike 的回答是完全正确的。我能想到的唯一形式是让它随着时间的推移而过期。

我有点乱,发现了这个。刚刚测试过,它有效。 2000 是您希望消息在过期之前等待的时间(以毫秒为单位)。弄乱“3”参数以查看其他按钮选择(到目前为止,我发现 0 到 6 个有效)。希望这有帮助。

PROCEDURE MessageBoxTimeoutA EXTERNAL "user32.dll":
    DEFINE  INPUT PARAMETER hwnd            AS LONG      NO-UNDO.
    DEFINE  INPUT PARAMETER lpText          AS CHARACTER NO-UNDO.
    DEFINE  INPUT PARAMETER lpCaption       AS CHARACTER NO-UNDO.
    DEFINE  INPUT PARAMETER uType           AS LONG      NO-UNDO.
    DEFINE  INPUT PARAMETER wLanguageID     AS LONG      NO-UNDO.
    DEFINE  INPUT PARAMETER lngMilliseconds AS LONG      NO-UNDO.
    DEFINE RETURN PARAMETER ans             AS LONG      NO-UNDO.
END PROCEDURE.
DEFINE VARIABLE i AS INTEGER     NO-UNDO.
RUN messageBoxTimeoutA (0, "Test","test2", 3 , 0, 2000, OUTPUT i ).

DISPLAY i.

我的例子有按钮是-否-取消。 i 的值为 6 表示是,7 表示否,2 表示取消,如果超时则为 32000。