IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

Tuer un MOUSE_OVER


Sujet :

ActionScript 3

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2
    Par défaut Tuer un MOUSE_OVER
    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.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 124
    Par défaut
    Bonsoir,

    Tu es sûr que le bouton ne considère pas plutôt que c'est un rollout plutôt qu'un mouseout ?

    Parce que si les removeEventListener que tu as essayé sont ceux en commentaires dans le code que tu as posté, ils ne correspondent à rien.

    Il aurait fallu faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    fullSprite.removeEventListener(MouseEvent.ROLL_OVER, ScaleOn);
    fullSprite.removeEventListener(MouseEvent.ROLL_OUT, ScaleOn);
    C'est à dire faire un remove du couple event/function sur ton objet (et donc d'un couple existant, ce qui n'est pas le cas de tes lignes en commentaire).

  3. #3
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 2
    Par défaut
    c'est bien une erreur de ma part...Mais dans le texte de ma question car j'ai juste testé avec des ROLL_ pour voir si le comportement changeait.

    Sinon j'utilise bien des MOUSE_

Discussions similaires

  1. [Kill]tuer un process
    Par parisjohn dans le forum C
    Réponses: 9
    Dernier message: 27/08/2004, 14h26
  2. Comment tuer une frame
    Par tymous dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 28/07/2004, 11h53
  3. Comment tuer le processus ez-ipupdate
    Par berry dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 21/06/2004, 15h07
  4. Tuer le processus d'Interbase ?
    Par JezabelleTwin dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/04/2004, 13h09
  5. [VB6] [Système] Tuer un processus courant
    Par mdoyer dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 22/10/2002, 14h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo