4D v14.3Lire texte edite |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
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 retourne le texte en cours de saisie dans un objet de formulaire.
Cette commande est principalement destinée à être utilisée avec l'événement formulaire Sur après frappe clavier pour récupérer le texte au fur et à mesure de la frappe. Elle peut également être utilisée avec l’événement formulaire Sur avant frappe clavier.
Note : Pour des raisons d’harmonisation avec le nouvel événement formulaire Sur après frappe clavier, l’événement Sur entrée clavier a été renommé en Sur avant frappe clavier à compter de la version 6.5 de 4D.
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 :
Ces deux é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=Sur après frappe clavier)
[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=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 v14 R2)
4D - Langage ( 4D v13.5)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)
Hérité de : Lire texte edite ( 4D v12.4)