4D v16.3ST SET TEXT |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
ST SET TEXT
ST SET TEXT
La commande ST SET TEXT insère le texte passé dans le paramètre nouvTexte dans le champ ou la variable de texte multistyle désigné(e) par le paramètre objet. Cette commande s’applique uniquement au texte brut du paramètre objet, sans modifier les éventuelles balises de style qu’il contient. Elle permet de modifier par programmation du texte multistyle affiché à l’écran. Si vous passez le paramètre optionnel *, vous indiquez que le paramètre objet est un nom d’objet (une chaîne). A l'exécution, si l'objet a le focus, la commande s'applique uniquement à l'objet en cours d'édition et non à sa source de données (variable ou champ). Les modifications ne sont reportées dans la source (et donc dans les éventuels autres objets utilisant la même source) que lorsque l'objet en cours d'édition est validé via une perte de focus ou la touche Entrée. Si l'objet n'a pas le focus, la commande s'applique directement à la source de données et les modifications sont immédiatement répercutées aux éventuels autres objets utilisant la même source. Passez dans nouvTexte le texte à insérer. La commande ST SET TEXT est destinée aux manipulations de texte stylé (multistyle), contenant des balises de type <span>. Dans tous les autres cas (notamment en cas de manipulation de texte non stylé mais contenant les caractères <, > ou &), vous devez utiliser la commande ST SET PLAIN TEXT. Si vous passez à la commande ST SET TEXT un texte brut contenant des caractères <, > ou &, la commande ne fait rien. Ce principe de fonctionnement est nécessaire car l'insertion directe d'une chaîne telle que "a<b" au sein d'un texte stylé va fausser l'analyse interne des balises <span>. Dans ce cas, le caractère "<" doit être préalablement encodé "<", ce qui est effectué par la commande ST SET PLAIN TEXT (voir également l'exemple de cette commande). Les paramètres optionnels débutSel et finSel vous permettent de désigner une sélection de texte dans objet. Les valeurs débutSél et finSél expriment une sélection de texte brut, sans tenir compte des balises de style éventuellement présentes dans le texte. L’action de la commande diffère en fonction des paramètres facultatifs débutSél et finSél :
4D propose des constantes prédéfinies afin de désigner automatiquement des bornes de sélection dans les paramètres débutSél et finSél. Ces constantes sont placées dans le thème "Texte multistyle" :
(*) Vous devez passer un nom d’objet dans objet pour pouvoir utiliser cette constante. Si vous passez une référence de variable ou de champ, la commande s’appliquera à l’ensemble du texte de l’objet. Note : Si débutSél est supérieur à finSél, le texte n'est pas modifié et la variable OK prend la valeur 0 (hormis lorsque finSél vaut 0, cf. ci-dessus). A l’issue de l’exécution de cette commande, la variable OK prend la valeur 1 si aucune erreur n’a été rencontrée et 0 dans le cas contraire. C’est le cas notamment lorsque l’évaluation des balises de style échoue (balise incorrecte ou manquante). A noter qu’en cas d’erreur, la variable n’est pas modifiée. Lorsqu’une erreur se produit sur une variable lors de l’évaluation du texte, 4D transforme le texte en texte brut ; par conséquent, les caractères <, > et & seront convertis en entités HTML. Vous souhaitez remplacer le texte multistyle sélectionné par l’utilisateur avec le contenu d'une variable. Voici le texte sélectionné : Le contenu stocké dans le champ est le suivant : Après exécution de ce code : vtempo:="Démonstration" Le champ et son contenu sont les suivants :
Reportez-vous à l'exemple de la commande ST SET PLAIN TEXT.
Voir aussi
|
PROPRIÉTÉS
Produit : 4D HISTORIQUE
Créé : 4D v12 UTILISATION DE L'ARTICLE
4D - Langage ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||