MessageBoxTimeout()
Shows
a Message Box with Timeout
Syntax:
MessageBoxTimeout ( [ xData ], [ cTitle ], [ nTypeIconButton ], [ nMilliseconds ] ) ---> return nRetValue
- xData: any data type or an array of any data type
- nTypeIconButton and nRetValue: are constants defined in i_MsgBox.ch
- nTypeIconButton is one or a combination of the following constants:
- MB_USERICON
- MB_ICONASTERISK
- MB_ICONEXCLAMATION
- MB_ICONWARNING
- MB_ICONERROR
- MB_ICONHAND
- MB_ICONQUESTION
- MB_OK
- MB_ABORTRETRYIGNORE
- MB_APPLMODAL
- MB_DEFAULT_DESKTOP_ONLY
- MB_HELP
- MB_RIGHT
- MB_RTLREADING
- MB_DEFBUTTON1
- MB_DEFBUTTON2
- MB_DEFBUTTON3
- MB_DEFBUTTON4
- MB_ICONINFORMATION
- MB_ICONSTOP
- MB_OKCANCEL
- MB_RETRYCANCEL
- MB_SETFOREGROUND
- MB_SYSTEMMODAL
- MB_TASKMODAL
- MB_YESNO
- MB_YESNOCANCEL
- MB_ICONMASK
- MB_DEFMASK
- MB_MODEMASK
- MB_MISCMASK
- MB_NOFOCUS
- MB_TYPEMASK
- MB_TOPMOST
- MB_CANCELTRYCONTINUE
- nRetValue is one of the following constants:
- IDOK
- IDCANCEL
- IDABORT
- IDRETRY
- IDIGNORE
- IDYES
- IDNO
- IDCLOSE
- IDHELP
- IDTRYAGAIN
- IDCONTINUE
- IDTIMEDOUT
- Example:
#include "hmg.ch"
Function Main
nTypeIconButton = MB_YESNO + MB_ICONQUESTION + MB_SYSTEMMODAL
nMilliseconds = 3200
nRetValue = MessageBoxTimeout ("You are happy?", "Question ...", nTypeIconButton, nMilliseconds)
DEFINE WINDOW Form_1 AT 0,0 WIDTH 400 HEIGHT 200 TITLE 'HMG MessageBoxTimeout Function' MAIN
@ 50, 50 LABEL Label_1 VALUE "" AUTOSIZE
END WINDOW
DO CASE
CASE nRetValue == IDYES
Form_1.Label_1.Value := "Yes"
CASE nRetValue == IDNO
Form_1.Label_1.Value := "No"
CASE nRetValue == IDTIMEDOUT
Form_1.Label_1.Value := "TimeOut in " + HB_NTOS (nMilliseconds/1000) + " seconds"
ENDCASE
CENTER WINDOW Form_1
ACTIVATE WINDOW Form_1
Return Nil