La gestion du texte
CHAPITRE 14
353
Pour être plus précis, ce script devrait d’abord s’assurer qu’une autre extension n’existe
pas déjà, ce que nous n’avons pas écrit, pour ne pas complexifier davantage ces quelques
lignes d’instructions.
Contrôler le défilement d’un texte
Défilement vertical
Si vous ne souhaitez pas utiliser un composant pour contrôler le défilement d’un texte,
vous pouvez faire appel aux propriétés scrollV et scrollH de la classe TextField(). Elles
permettent non seulement de faire défiler des lignes comme vous le feriez avec un ascenseur
habituel, mais également de réaliser un ascenseur horizontal.
L’exemple ci-dessous permet de faire défiler les mois de l’année. Deux occurrences de
type clip ont préalablement été placées sur la scène, puis nommées btAvant et btApres.
Nous utilisons la propriété scrollV pour faire défiler le texte, mais en ajoutant les lignes une
à une. Nous pouvons écrire indifféremment, listeDeMois.scrollV = listeDesMois.scrollV+1
ou listeDesMois.scrollV++
var moisAnnee:Array = ["Janvier","Février","Mars","Avril","Mai","Juin","Juillet",
➥"Août","Septembre","Octobre","Novembre","Décembre"];
var listeDesMois:TextField = new TextField();
for each (var entree:String in moisAnnee) {
listeDesMois.appendText(entree+"\n");
}
listeDesMois.width= 200;
listeDesMois.height= 70;
listeDesMois.selectable = false;
addChild(listeDesMois);
listeDesMois.scrollV=5;
btAvant.addEventListener(MouseEvent.MOUSE_DOWN,baisser);
btApres.addEventListener(MouseEvent.MOUSE_DOWN,monter);
function baisser(evt:MouseEvent) {
listeDesMois.scrollV++;
}
function monter(evt:MouseEvent) {
listeDesMois.scrollV--;
}
Si nous souhaitions remonter ou abaisser le texte de plusieurs lignes, nous remplacerions
listeDesMois.scrollV++ par listeDesMois.scrollV+=3. Pour remonter ou abaisser le texte à
une ligne précise, nous pourrions utiliser la ligne d’instruction suivante :
listeDesMois.scrollV=5;
Précédent

- 381/426

Suivant