ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Help / WLanguage / WLanguage functions / Controls, pages and windows / Control functions
  • Focus gain
  • ScreenFirst, SetFocus and ReturnToCapture
  • Error
  • ReturnToCapture on a window
  • ReturnToCapture on the current control
  • Processes / Events executed when ReturnToCapture is called
  • ReturnToCapture and END:
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
Stops the current process and forces the input in the specified control, window or page.
Remark: This function is equivalent to SetFocusAndReturnToUserInput.
Example
// If no value was entered by the user in the control
IF EDT_Edit1 = "" THEN
// Display a message and position the user in edit on the control
Error("Enter a value")
ReturnToCapture(EDT_Edit1)
END
Syntax
ReturnToCapture([<Element to use>])
<Element to use>: Control, window or page name
Name of control, column or window that will gain focus (see Notes). If this parameter is not specified, the current control gains focus.
To specify a control that belongs to a window other than the current window, <Element to handle> must be in the following format: <Window name>.<Control name>.
Android Name of the control or window that will gain focus (see Notes). If this parameter is not specified, the current control gains focus.
Remarks

Focus gain

Taking "focus" is represented in different ways:
  • Blinking cursor (or "Caret") for the edit controls.
  • Dotted rectangle for the other types of controls (Button, List Box, Radio Button controls, etc.).

ScreenFirst, SetFocus and ReturnToCapture

These functions have a different behavior:
  • ReturnToCapture stops the current process to force the input in the specified control.
  • ScreenFirst defines which control will receive input focus (when the current code stops and input focus is set back to a control).
  • SetFocus stops the current process, defines which control will receive input focus and resumes the current process.

Error

A WLanguage error occurs if <Element to handle> does not correspond to a control in the current window or page.
Android

ReturnToCapture on a window

If <Element to handle> corresponds to the name of a window, the window becomes active. The control that will gain focus in this window will correspond to:
  • the last control previously in edit in this window,
  • the first control that can gain focus in this window (if no data was previously entered).
Android

ReturnToCapture on the current control

ReturnToCapture used without parameters sets the focus on the current control. This function, called in the exit code of an Edit control, is used to force the input in the selected control if the data entered and the expected data do not match.
Android

Processes / Events executed when ReturnToCapture is called

The WLanguage code that follows the call to ReturnToCapture is not executed and control is given to the user.
Special cases:
  • if ReturnToCapture is called in a code called by Execute, ExecuteCode or ExecuteProcess, the code called by Execute, ExecuteCode or ExecuteProcess is interrupted. The execution resumes after the call to Execute, ExecuteCode or ExecuteProcess.
  • if ReturnToCapture is called in the code of a function of a window other than the current one, the code of this function is interrupted and execution resumes after the call.
  • if ReturnToCapture is called in the code of a component (procedure or method), the code is interrupted and execution resumes after the call to the procedure or method.
  • if ReturnToCapture is called in the code of a procedure of an internal window, the code is interrupted and execution resumes after the call to the procedure.
  • if ReturnToCapture is called in the code of a menu option, the code is interrupted and execution resumes after the call to the option.
  • if ReturnToCapture is called in a window procedure called from a supercontrol, the code is interrupted and execution resumes after the call to the procedure.
  • if ReturnToCapture is called in the code of a procedure of a supercontrol or control template, the code is interrupted and execution resumes after the call to the procedure.
The current process is permanently interrupted. For example:
ReturnToCapture("Edit1")
Info("XXX")    // Is never run
In most cases, the exist events (from the current control or window) and the input events (in the specified control or window) are run at the same time as ReturnToCapture.
Exceptions:
  • No code is executed if <Element to handle> is the current control.
  • The exit code of the selected control is not run if ReturnToCapture is used in one of the events of this control.
To avoid interrupting the process, use ScreenFirst or SetFocus.
Android The WLanguage code that follows the call to ReturnToCapture is not executed. The execution of processes resumes:
Android

ReturnToCapture and END:

After a call to ReturnToCapture, the code that follows the "END:" statement is not executed. ReturnToCapture can be replaced with the call to ScreenFirst followed by RETURN.
Business / UI classification: UI Code
Component: wd300obj.dll
Minimum version required
  • Version 9
This page is also available for…
Comments
Click [Add] to post a comment

Last update: 05/30/2022

Send a report | Local help