ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

This content has been translated automatically.  Click here  to view the French version.
Help / WLanguage / WLanguage functions / Controls, pages and windows / Control functions
  • Focus gain
  • ScreenFirst, SetFocus and ReturnToCapture
  • Error
  • ReturnToCapture on a window
  • ReturnToCapture on a Table control column
  • ReturnToCapture on the current control
  • Processes / Events executed when ReturnToCapture is called
  • ReturnToCapture and END:
WINDEV
WindowsLinuxJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac Catalyst
Others
Stored procedures
Stops the current process and forces the input in the specified control, window or page.
Note: This function is equivalent to SetFocusAndReturnToUserInput.
Example
// Si l'utilisateur n'a rien saisi dans le champ
IF SAI_Saisie1 = "" THEN
	// On affiche un message et on remet l'utilisateur en saisie sur le champ 
	Error("Saisissez une valeur")
	ReturnToCapture(SAI_Saisie1)
END
WINDEVJavaUser code (UMC)
// Positionner le curseur de souris dans une cellule d'un champ Table (multisélection ou non) 
TABLE_Nom_De_Table = Indice_de_ligne
ReturnToCapture(TABLE_Nom_De_Table.COL_Nom_de_colonne)
Syntax
SetFocusAndReturnToUserInput([<Element to handle>])
<Element to handle>: 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>.
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.
WINDEVJavaUser code (UMC)

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).
WINDEVJavaUser code (UMC)

ReturnToCapture on a Table control column

ReturnToCapture sets the focus on the specified column. If the Table control is not receiving any input, it becomes editable.
WINDEVJavaUser code (UMC)

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.
WINDEVJavaUser code (UMC)

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("Saisie1")
Info("XXX")    // N'est jamais exécuté
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.
Java The WLanguage code that follows the call to ReturnToCapture is not executed. The execution of processes resumes:
WINDEVJavaUser code (UMC)

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: 09/20/2024

Send a report | Local help