2014-03-06 49 views
0

我需要在等待窗口中顯示超時消息。我設法使用以下代碼:Visual FoxPro中的超時消息

wait window 'Message Here...' timeout 1 

如果單擊此窗口,則消息將消失。相反,我希望有類似的東西,但是如果用戶單擊消息,則不會發生任何事情,並且消息將保持可見(即消息只會在超時過期後纔會關閉)。

有人可以幫我一下嗎?我不介意有類似的東西(比如一個messagebox)執行相同的功能。

回答

1

這聽起來像你想顯示的消息,使秒的用戶等待XX號纔可以繼續。如果是這樣的話,那麼你可以做這樣的事情。

LOCAL ltMessageTimeOut 
m.ltMessageTimeOut = DATETIME() + 5 

DO WHILE DATETIME() < m.ltMessageTimeOut 
    WAIT WINDOW "Display Some Message" NOCLEAR TIMEOUT 1 
ENDDO 

WAIT CLEAR 
2

嘗試Visual FoxPro MessageBox()函數。這個函數有一個可選的超時參數。設置超時參數會使消息框在屏幕上停留一段時間,或者直到用戶單擊消息框上的按鈕。

Read more about it here

+0

這實際上是我所做的解決它。我想知道是否有任何方式讓用戶無法通過點擊來逃避消息?所以它永遠存在,直到超時過期。 – lvella

+1

我不在我的電腦前面有VFP,但你可能想看看ON KEY LABEL命令。該命令允許您控制按鍵的功能。所以你可以說ON KEY LABEL LEFTMOUSE DO nothing.prg。或者你可以做ON KEY LABEL *。這將阻止用戶關閉消息框,直到定時器結束。 – Jerry