ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Standard functions / Windows functions / Dialog Box functions
  • Features of the dialog box
  • Line break in the dialog box
  • Miscellaneous
  • Application in the background: Specific case from Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Displays a custom error message in a non-blocking system error window for a given amount of time. After the timeout, the system window is automatically closed.
Remarks:
  • This is a non-blocking error window. The WLanguage code that follows the call to ErrorWithTimeoutAsynchronous continues to run. To close the window, the user must validate the OK button or wait for the end of the timeout. When the user clicks "OK", the code of a WLanguage procedure can be run.
  • In the WLanguage code following the call to the function, another modal window cannot be opened before closing the dialog box.
  • iPhone/iPadMac Catalyst To use this function, you must integrate a custom dialog box into your project. For more details, see Customizing dialog boxes.
  • WINDEV WINDEV allows you to apply the skin template of your project to this dialog box. For more details, see Customizing dialog boxes.
Example
// Display "An error was detected" in an error window
// This error window will be automatically closed after 10 seconds
ErrorWithTimeoutAsynchronous(1000, "An error was detected")
Syntax
ErrorWithTimeout(<Timeout> , <Text> [, <WLanguage procedure>])
<Timeout>: Integer or Duration
Amount of time (expressed in hundredth of second) before automatically closing the error window. 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 10 ms).
<Text>: Character string
Text to display.
<WLanguage procedure>: Optional name of procedure or lambda procedure
Name of the WLanguage procedure ("callback") called when the user clicks "OK" in the error window.
This WLanguage procedure can correspond to:
  • a name of a global procedure,
  • a name of an internal procedure,
  • a lambda procedure.
If this parameter is not specified, no procedure is run when the user clicks "OK" in the error window.
Remarks

Features of the dialog box

  • The title of the dialog box corresponds to the title of the current window (or page).
    AndroidiPhone/iPad 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 (white cross) cannot be modified.
WINDEV 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.
iPhone/iPadMac Catalyst 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:
ErrorWithTimeoutAsynchronous(500, "An error was detected while entering the address." + CR + ...
"Please modify the customer details.")
You also have the ability to use the syntax of multiline strings. For example:
ErrorWithTimeoutAsynchronous(
[
An error was detected while entering the address.
 
Please modify the customer details.
])

Miscellaneous

  • Timers (TimerSys) are not stopped when this function is called.
  • WINDEV 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.
  • iPhone/iPad This function must not be used:
    • in the "Resize" event of the window. Otherwise, the application will be locked.
    • in the "Change the orientation" event of the window.
    • in the "Move to the foreground" event associated with the project.
      Remark: However, the function can be used in the "Move to the foreground" event of a window.
    • in a thread.
Android

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.
ErrorWithTimeoutAsynchronous can open a window. If this function is used while the application is in the background, a fatal error will occur.
Tips:
  • 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.
Component: wd290obj.dll
Minimum version required
  • Version 25
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 02/29/2024

Send a report | Local help