- Features of the dialog box
- Line break in the dialog box
- Special cases
- Application in the background: Specific case from Android 10
In french: InfoAvecDélaiAsynchrone
// Displays an information window that automatically closes after 10 seconds
InfoWithTimeoutAsynchronous(1000, "Action successful!", MyProcedure_Info)
INTERNAL PROCEDURE MyProcedure_Info()
InfoWithTimeoutAsynchronous(<Timeout> , <Text> [, <WLanguage procedure>])
<Timeout>: Integer ou Duration
Amount of time (expressed in hundredths of a second) before automatically closing the system information window. The minimum timeout is 1 second. This parameter can be:
- an integer corresponding to the number of hundredths of a second,
- a Duration variable,
- the duration in a readable format (e.g., 1 s or 1000 ms).
<Text>: Character string
Text to display.
<WLanguage procedure>: Optional name of procedure or lambda procedure
Name of the WLangage procedure ("callback") called when the user clicks "OK" in the information window.
This WLanguage procedure can correspond to:
If this parameter is not specified, no procedure is run when the user clicks "OK" in the information window.
- a name of a global procedure,
- a name of an internal procedure,
- a lambda procedure.
Features of the dialog box
- The title of the dialog box corresponds to the title of the current window (or page).
To comply with the system specifications, the title of dialog box is empty by default. To define this title, use NextTitle.
- To modify or define the title of dialog box, use NextTitle.
- The message is aligned to the left.
- The button caption depends on the runtime language of Windows.
- The maximum number of characters cannot exceed 4096. If a larger string is passed as parameter, it will be truncated.
- The icon displayed (information tooltip) cannot be modified.
To customize this dialog box
(and all the system dialog boxes in your application), check "Customize system windows (Info, YesNo, Confirm, Dialog)" in the "Style" tab of the project description. For more details, see Customizing dialog boxes
To use this function, you must customize the dialog boxes in your application. In the project description window, in the "Style" tab, check "Customize system windows (Info, YesNo, Confirm, Dialog)". For more details, see Customizing dialog boxes
Line break in the dialog box
The CR string (Carriage Return) can be used to force a break to the next line. For example:
InfoWithTimeoutAsynchronous(500, "The form XXX was modified." + CR + "This form will be saved.")
You also have the ability to use the syntax of multiline strings. For example:
The XXX form has been modified.
This form will be saved.
- Timers (TimerSys) are not stopped when this function is called.
- Windows events are not stopped when this function is called.
- The caption of the button is displayed in the language used by Windows on the current computer.
- This function must not be used:
- in the event "Resizing" of the window. Otherwise, the application will be locked.
- in the event "Changing the orientation" of the window.
- in the event "Move to the foreground" associated with the project.
Remark: However, the function can be used in the event "Move to the foreground" of a window.
- in a thread.
Application in the background: Specific case from Android 10
From Android 10, it is no longer possible to open a window when the application is in the background.
InfoWithTimeoutAsynchronous can open a window. If this function is used while the application is in the background, a fatal error will occur.
- It is possible to determine if the application is in the background using InBackgroundMode.
- If an application needs to interact with the user while it is in the background, the solution is to display a notification (via the Notification type). The application will be brought back to the foreground when the notification is clicked, if the ActivateApplication property is set to True. You can also open a window from the procedure passed to the ActionClick property.
This page is also available for…