bonjour

je débute en AS3 et j'ai un problème concernant un evenement mouse_over.

Je suis en train de développer une interface en AS3 pour une visionneuse de panoramas 360°

C'est le bouton Fullscreen qui me pose problème.

Ce bouton grandit lors du survol et revient a sa taille initiale ensuite.

Quand je clique dessus, le viewer passe en fullscreen. pas de soucis. Le fonctionnement du bouton continue normalement.

Quand je reviens en mode d'affichage normal (non fullscreen), la souris est hors de la visionneuse. Quand elle revient dans celle-ci, le bouton considère que c'est un mouse_out et rétréci le bouton...Donc problème

j'ai essayé de placer des removeEventListener mais sans résultats, surement a cause de mon inexpérience.

La partie de code intéressante:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
function affichageFullscreen(event:Event){
 
    fullSprite.alpha = alphaIcone;
 
    conteneurFullscreen.width = tailleInitialeX*scale;
    conteneurFullscreen.height = tailleInitialeY*scale;
 
    conteneurFullscreen.x = -1*conteneurFullscreen.width/2;
    conteneurFullscreen.y = -1*conteneurFullscreen.height/2;
 
    fullSprite.addChild(conteneurFullscreen);
 
    fullSprite.width = conteneurFullscreen.width;
    fullSprite.height = conteneurFullscreen.height;
 
    fullSprite.buttonMode = true;
 
 
    fullSprite.x = centreX+offsetX+4*(conteneurFullscreen.width+intervalleX)+conteneurFullscreen.width/2;
    fullSprite.y = centreY+offsetY+conteneurFullscreen.height/2;
 
 
    this.addChild(fullSprite);
 
    fullSprite.addEventListener(MouseEvent.CLICK, FullScreen);
 
    fullSprite.addEventListener(MouseEvent.ROLL_OVER, ScaleOn);
    fullSprite.addEventListener(MouseEvent.ROLL_OUT, ScaleOff);
 
 
    }
 
 function FullScreen(event:Event)  
{ 
    //fullSprite.removeEventListener(MouseEvent.MOUSE_OUT, ScaleOn);
    //fullSprite.removeEventListener(MouseEvent.MOUSE_OVER, ScaleOn);
 
 
if ( stage.displayState ==  StageDisplayState.NORMAL) 
    {
 
    this.stage.displayState = StageDisplayState.FULL_SCREEN;
 
    }
 
else 
    {
 
    stage.displayState = StageDisplayState.NORMAL;
 
    }
 
}
 
function ScaleOn(event:Event){
 
    event.currentTarget.alpha = 1;
 
    event.currentTarget.width = event.currentTarget.width*1.5;
    event.currentTarget.height = event.currentTarget.height*1.5;
 
    }
 
function ScaleOff(event:Event){
 
    event.currentTarget.alpha = 0.7;
 
    event.currentTarget.width = event.currentTarget.width/1.5;
    event.currentTarget.height = event.currentTarget.height/1.5;
 
 
 
 
    }

merci pour tous conseils ou avis

frederic.