Flex 3 - Applications Internet riches
© Groupe Eyrolles, 2008
142
La méthode gestionMouseDown() sera donc codée de cette façon :
Il existe aussi une méthode intéressante de l’API Flex pour déplacer
notre panneau sélectionné d’un point vers un autre. En effet, la classe
TitleWindow (et donc par héritage notre classe DragTitleWindow) dérive
de la classe UIComponent, qui propose la méthode move() dont voici la
signature :
Méthode move()
Paramètres
Cette méthode déplace un composant et tous ses parents vers un endroit
spécifié. En réalité, appeler cette méthode revient à ajuster les propriétés
x et y du composant. La méthode doit être opérationnelle pendant la
phase de déplacement, et donc intégrée dans notre fonction
gestionMouseMove().
De plus, il est nécessaire de stopper ici le mécanisme de propagation
événementielle, car il est désormais inutile d’activer les écouteurs pendant le déplacement d’un panneau. Flex permet précisément d’intervenir
sur la propagation d’un événement à l’aide des méthodes
stopPropagation() et stopImmediatePropagation() :
Méthode événement gestionMouseDown()
private function gestionMouseDown(event: MouseEvent): void
{
Modification de la transparence du panneau.
B
this.alpha = 0.5;
Modification de couleur de l’en-tête et de la bordure.
B
this.setStyle("headerColors", [0x000000, 0xBDE9FA]);
this.setStyle("borderColor", 0xBDE9FA);
Ajout des écouteurs MouseMove et MouseUp. B
systemManager.addEventListener(MouseEvent.MOUSE_MOVE,
gestionMouseMove, true);
systemManager.addEventListener(MouseEvent.MOUSE_UP,
gestionMouseUp, true);
Enregistrement des coordonnées par rapport au
composant.
B
nDebutX = x;
nDebutY = y;
Enregistrement des coordonnées par rapport à la
scène.
B
nGlisseDebutX = event.stageX;
nGlisseDebutY = event.stageY;
Indique que le bouton de la souris est pressé
(MouseDown).
B
bMouseButton = true;
public function move(x:Number, y:Number):void
x:Number — Position gauche du composant.
y:Number — Position supérieure du composant.
EN SAVOIR PLUS Classe SystemManager
La classe SystemManager gère une fenêtre
d’application. Chaque application qui s’exécute
sur le bureau ou dans le navigateur possède une
zone où les visuels de l’application sont affichés.
Cette zone peut être une fenêtre dans le système
d’exploitation ou une zone réservée à l’intérieur du
navigateur.
© Groupe Eyrolles, 2008
142
La méthode gestionMouseDown() sera donc codée de cette façon :
Il existe aussi une méthode intéressante de l’API Flex pour déplacer
notre panneau sélectionné d’un point vers un autre. En effet, la classe
TitleWindow (et donc par héritage notre classe DragTitleWindow) dérive
de la classe UIComponent, qui propose la méthode move() dont voici la
signature :
Méthode move()
Paramètres
Cette méthode déplace un composant et tous ses parents vers un endroit
spécifié. En réalité, appeler cette méthode revient à ajuster les propriétés
x et y du composant. La méthode doit être opérationnelle pendant la
phase de déplacement, et donc intégrée dans notre fonction
gestionMouseMove().
De plus, il est nécessaire de stopper ici le mécanisme de propagation
événementielle, car il est désormais inutile d’activer les écouteurs pendant le déplacement d’un panneau. Flex permet précisément d’intervenir
sur la propagation d’un événement à l’aide des méthodes
stopPropagation() et stopImmediatePropagation() :
Méthode événement gestionMouseDown()
private function gestionMouseDown(event: MouseEvent): void
{
Modification de la transparence du panneau.
B
this.alpha = 0.5;
Modification de couleur de l’en-tête et de la bordure.
B
this.setStyle("headerColors", [0x000000, 0xBDE9FA]);
this.setStyle("borderColor", 0xBDE9FA);
Ajout des écouteurs MouseMove et MouseUp. B
systemManager.addEventListener(MouseEvent.MOUSE_MOVE,
gestionMouseMove, true);
systemManager.addEventListener(MouseEvent.MOUSE_UP,
gestionMouseUp, true);
Enregistrement des coordonnées par rapport au
composant.
B
nDebutX = x;
nDebutY = y;
Enregistrement des coordonnées par rapport à la
scène.
B
nGlisseDebutX = event.stageX;
nGlisseDebutY = event.stageY;
Indique que le bouton de la souris est pressé
(MouseDown).
B
bMouseButton = true;
public function move(x:Number, y:Number):void
x:Number — Position gauche du composant.
y:Number — Position supérieure du composant.
EN SAVOIR PLUS Classe SystemManager
La classe SystemManager gère une fenêtre
d’application. Chaque application qui s’exécute
sur le bureau ou dans le navigateur possède une
zone où les visuels de l’application sont affichés.
Cette zone peut être une fenêtre dans le système
d’exploitation ou une zone réservée à l’intérieur du
navigateur.
