PC SOFT

WINDEVWEBDEV AND WINDEV MOBILE
ONLINE HELP

Home | Sign in | English UK
New WINDEV, WINDEV Mobile 25 feature!
  • Characteristics of dialog box
  • Line break in the dialog box
  • Miscellaneous
  • Application in the background: Android 10 specific case
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Displays a message in a standard non-blocking dialog box with the answers "OK" and "Cancel" and calls a WLanguage procedure with the user's response.
Confirmation example
Remarks:
  • This is a non-blocking dialog box. The WLanguage code that follows the call to OKCancelAsynchronous continues to run. To close the window, the user must validate one of the buttons. When the user clicks one of the buttons, the code of a WLanguage procedure is run.
  • In the WLanguage code following the call to the function, another modal window cannot be opened before closing the dialog box.
  • WINDEV WINDEV allows you to apply the skin template of your project to this dialog box. See Customizing dialog boxes for more details.
Example
// Choice used to exit the program
OKCancelAsynchronous(No, "Do you want to exit the program?", MyProcedure_OKCancel)
 
INTERNAL PROCEDURE MyProcedure_OKCancel(nResponse int)
SWITCH nResponse
CASE Yes:
ToastDisplay("OK button")
Close()
CASE No: ToastDisplay("Cancel button")
END
END
Syntax

Displaying an OK/Cancel dialog box Hide the details

OKCancelAsynchronous([<Selected button>, ] <Text> , <WLanguage procedure>)
<Selected button>: Optional boolean
Button selected by default in the dialog box:
No"Cancel" button selected by default.
True
(by default)
"OK" button selected by default.
<Text>: Character string
Text to display.
<WLanguage procedure>: Name of procedure or lambda procedure
Name of the WLangage procedure ("callback" procedure) called when the user clicks one of the buttons in the confirmation window.
This procedure is used to find out which button was clicked, and to run a specific process if necessary.
For more details on this procedure, see Parameters of the procedure used by OKCancelAsynchronous.
This WLanguage procedure can correspond to:
  • a name of a global or local procedure,
  • a name of internal procedure,
  • a lambda procedure.
Remarks

Characteristics of 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 left.
  • The captions of buttons depend on the runtime language of Windows.
  • The maximum number of characters cannot exceed 4096. If a larger string is passed in parameter, it will be truncated.
  • The icon displayed (exclamation mark) cannot be modified.
WINDEV To customize this dialog box (as well as all system dialog boxes of your application), check "Customize the system windows (Info, YesNo, Confirm, Dialog)" in the "Style" tab of the project description. See Customizing dialog boxes for more details.

Line break in the dialog box

The CR string (Carriage Return) can be used to force a break to the next line. For example:
OKCancelAsynchronous("Caution: you are going to delete this record" + CR + ...
"Do you want to continue?", MyProcedure)
You also have the ability to use the syntax of multiline strings. For example:
OKCancelAsynchronous(
[
Caution: you are going to delete this record.
 
Do you want to continue?
], Procedure_OKCancelAsynchronous)

Miscellaneous

  • Timers (TimerSys) are not stopped when this function is called.
  • WINDEV Windows events are not stopped when this function is called.
  • WINDEV DelayBeforeClosing limits how long the message is displayed. The dialog box is automatically closed. For question or confirmation dialog boxes, the default button corresponds to the expected answer.
  • The text of the buttons is displayed in the system language.
  • iPhone/iPad 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.
Versions 25 and later
Android

Application in the background: Android 10 specific case

From Android 10, it is no longer possible to open a window when the application is in the background.
OKCancelAsynchronous 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). When the notification is clicked on, the application will be brought back to the foreground if ..ActivateApplication is set to True. It is also possible to open a window from the procedure passed to ..ActionClick.
New in version 25
Android

Application in the background: Android 10 specific case

From Android 10, it is no longer possible to open a window when the application is in the background.
OKCancelAsynchronous 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). When the notification is clicked on, the application will be brought back to the foreground if ..ActivateApplication is set to True. It is also possible to open a window from the procedure passed to ..ActionClick.
Android

Application in the background: Android 10 specific case

From Android 10, it is no longer possible to open a window when the application is in the background.
OKCancelAsynchronous 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). When the notification is clicked on, the application will be brought back to the foreground if ..ActivateApplication is set to True. It is also possible to open a window from the procedure passed to ..ActionClick.
Component : wd250obj.dll
Minimum version required
  • Version 25
This page is also available for…
Comments
Click [Add] to post a comment