Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Lire texte edite
|
Lire texte edite -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
Résultat | Texte |
![]() |
Texte en cours de saisie | |||||
La commande Lire texte edite est principalement destinée à être utilisée avec l'événement formulaire Sur après modification pour récupérer le texte au fur et à mesure de la frappe. Elle peut également être utilisée avec les événements formulaire Sur avant frappe clavier et Sur après frappe clavier. Pour plus d'informations sur ces événements formulaire, veuillez consulter la description de la commande Evenement formulaire code.
La combinaison de cette commande avec les événements formulaire Sur avant frappe clavier et Sur après frappe clavier fonctionne de la manière suivante :
A noter que l'événement Sur après frappe clavier peut généralement être remplacé par l'événement Sur après modification, qui prend en charge davantage de méthodes de saisie (telles que l'IME).
Ces événements ne sont générés que dans les méthodes des objets concernés.
Dans un contexte autre que la saisie dans un formulaire, cette fonction retourne une chaîne vide.
Dans un formulaire entrée, vous souhaitez que les caractères saisis soient automatiquement mis en majuscules :
Si(Evenement formulaire code=Sur après modification)
[Voyages]Agences:=Majusc(Lire texte edite)
Fin de si
Voici un exemple de traitement à la volée des caractères saisis dans un champ texte. Le principe consiste à placer dans un autre champ texte (appelé “Mots”) la décomposition en mots de la phrase en cours de saisie. Pour cela, écrivez dans la méthode objet du champ de saisie :
Si(Evenement formulaire code=Sur après frappe clavier)
$SaisieTempsRéel:=Lire texte edite
PROPRIETES PLATE FORME($plate_forme)
Si($plate_forme#3) ` Macintosh ou Power Macintosh
Repeter
$PhraseDécomposée:=Remplacer chaine($SaisieTempsRéel;Caractere(32);Caractere(13))
Jusque(Position(" ";$PhraseDécomposée)=0)
Sinon ` Windows
Repeter
$PhraseDécomposée:=Remplacer chaine($SaisieTempsRéel;Caractere(32);
Caractere(13)+Caractere(10))
Jusque(Position(" ";$PhraseDécomposée)=0)
Fin de si
[Exemple]Mots:=$PhraseDécomposée
Fin de si
Note : Cet exemple n’est pas exhaustif puisque l’on considère que les mots sont séparés par des espaces uniquement (Caractere (32)). La mise au point d’un système complet nécessiterait l’ajout d’autres filtres afin de repérer tous les mots (point-virgules, virgules, apostrophes, etc...).
Produit : 4D
Thème : Gestion de la saisie
Numéro :
655
Nom intl. : Get edited text
Créé : 4D v6.5
4D - Langage ( 4D v20 R7)