|
|
|
|
|
- Propiedades específicas de las variables de tipo InputMask
- Uso
InputMask (Tipo de variable)
El tipo InputMask permite definir las características avanzadas de una máscara de entrada personalizada. Las características de esta máscara de entrada personalizada se pueden definir y cambiar utilizando diferentes propiedades WLanguage. Observación: Para obtener más información sobre la declaración de este tipo de variable y el uso de propiedades WLanguage, consulte Declarar una variable.
sMask is string = "99 99 99 99 99"
CustomMask is InputMask
CustomMask.FormatDuringInput = FormatDuringInput
CustomMask.ValidateDuringInput = ValidateDuringInput
CustomMask.ValidateDuringExit = ValidateDuringExit
CustomMask.FormatDuringExit = FormatDuringExit
CustomMask.FormatDuringEntry = FormatDuringEntry
CustomMask.FormatDuringAssignment = FormatDuringAssignment
CustomMask.CheckIfValidInput = CheckIfValidInput
EDT_Phone.InputMask = CustomMask
INTERNAL PROCEDURE FormatDuringInput(LOCAL sTextBefore is string,
sTextAfter is string, ...
nCursorAfter is int, ...
nEndCursorAfter int)
IF Length(sTextBefore) > Length(sTextAfter) THEN RESULT
IF nEndCursorAfter = Length(sTextAfter) +1 THEN
IF Middle(sMask, nEndCursorAfter, 1) = " " THEN
sTextAfter += " "
nEndCursorAfter ++
nCursorAfter = nEndCursorAfter
END
END
END
INTERNAL PROCEDURE ValidateDuringInput(sText is string): boolean
RETURN MatchRegularExpression(sText , "[0-9 ]*")
END
INTERNAL PROCEDURE CheckIfValidInput(sText is string): boolean
RETURN ValidateDuringInput(sText) _AND_ Length(sText) >= 3
END
INTERNAL PROCEDURE FormatDuringAssignment(sText_INOUT is string)
FormatStringToPhoneNumber(sText_INOUT)
END
INTERNAL PROCEDURE ValidateDuringExit(sText is string): boolean
IF Length(sText) < 3 THEN
ToastDisplay("3 characters minimum")
RESULT False
END
RETURN True
END
INTERNAL PROCEDURE FormatDuringExit(sText_INOUT is string)
FormatStringToPhoneNumber(sText_INOUT)
END
INTERNAL PROCEDURE FormatDuringEntry(sText_INOUT is string)
FormatStringToPhoneNumber(sText_INOUT)
END
INTERNAL PROCEDURE FormatStringToPhoneNumber(sText_INOUT is string)
sText_INOUT = Replace(sTexte_INOUT," ","")
sResult is string
nPosSrc is int = 1
FOR I = 1 _TO_ Length(sMask)
SWITCH Middle(sMask, I, 1)
CASE " "
sResult += " "
OTHER CASE
sResult += Middle(sText_INOUT, nPosSrc, 1)
nPosSrc++
END
END
sText_INOUT = sResult
END
Observaciones Propiedades específicas de las variables de tipo InputMask Las siguientes propiedades pueden utilizarse para manipular una máscara de entrada personalizada: | | | Nombre de la propiedad | Tipo utilizado | Efecto |
---|
CheckIfValidInput | Procedimiento WLanguage | Nombre del procedimiento WLanguage llamado por las funciones InvalidInputDetect y InvalidInputListControl para determinar si el texto introducido es válido.Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna verificación. | FormatDuringAssignment | Procedimiento WLanguage | Nombre del procedimiento WLanguage que convierte el texto asignado mediante programación en el texto que se mostrará.Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna transformación. | FormatDuringEntry | Procedimiento WLanguage | Nombre del procedimiento WLanguage que transforma el texto que se muestra al entrar en edición.Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna transformación. | FormatDuringExit | Procedimiento WLanguage | Nombre del procedimiento WLanguage que transforma el texto al salir de la edición. Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna transformación. | FormatDuringInput | Procedimiento WLanguage | Nombre del procedimiento WLanguage que transforma el texto durante la entrada.Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(LOCAL<Text before> string, LOCAL <Cursor before> int, LOCAL <End Cursor before> int, <Text after> string, <Cursor after> int, <End Cursor after> int) donde: - <Texto antes> corresponde al texto antes de la entrada.
- <Cursor antes> corresponde a la posición del cursor antes de la entrada.
- <Fin cursor antes> corresponde a la posición final del cursor antes de la entrada.
- <Texto después> corresponde al texto después de la entrada.
- <Cursor después> corresponde a la posición del cursor después de la entrada.
- <Fin cursor después> corresponde a la posición final del cursor después de la entrada.
Si no se especifica esta propiedad, no se realiza ninguna transformación. | ValidateDuringExit | Procedimiento WLanguage | Nombre del procedimiento WLanguage que verifica la entrada (una vez que se han introducido todos los caracteres). Este procedimiento devuelve False si el texto introducido contiene caracteres no válidos. Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna transformación. | ValidateDuringInput | Procedimiento WLanguage | Nombre del procedimiento WLanguage que verifica la entrada en curso. Este procedimiento devuelve False si el texto que se está introduciendo contiene caracteres no válidos. Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Text> string) donde <Texto> corresponde al texto a manipular. Si no se especifica esta propiedad, no se realiza ninguna transformación. |
Uso - Una variable de tipo InputMask puede ser asignada a la propiedad InputMask para controlar de forma personalizada cada evento relacionado con la gestión de una máscara en un control Campo de entrada.
- Las funciones MaskPhoneNumber y MaskZipCode manipulan variables de tipo InputMask.
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|