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 :

Obtenir un DisplayObject depuns une image dans un ScrollPane [Débutant(e)]


Sujet :

ActionScript 3

  1. #1
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut Obtenir un DisplayObject depuns une image dans un ScrollPane
    Bonjour,

    Bon, j'ai fait des progrès et mon SlideShow fonctionne. Tout ce qu'il me reste à faire, c'est d'agrandit l'image lorsqu'on clique sur le ScrollPane du centre. J'ai cependant une erreur à la première ligne de ma fonction zoomIn(). VOus pouvez m'aider?

    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
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    var numImage:Number = 1;
    var maxImage:Number = 26;
    var X_PETITE_VIGNETTE:Number = 120/1280;
    var Y_PETITE_VIGNETTE:Number = 90/960;
    var X_GRANDE_VIGNETTE:Number = 267/1280;
    var Y_GRANDE_VIGNETTE:Number = 200/960;
    var X_FULL_SIZE:Number = 500/960;
    var Y_FULL_SIZE:Number = 500/960;
     
     
    import flash.display.*;
    import flash.net.URLRequest;
    import flash.events.Event;
    var plLdr:Loader = new Loader();
    var pcLdr:Loader = new Loader();
    var prLdr:Loader = new Loader();
    if(maxImage > 0) {
    	pcLdr.load(new URLRequest("img/r1.jpg"));
    	pcLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, show_grande_vignette);
    	plLdr.load(new URLRequest("img/r"+maxImage+".jpg"));
    	plLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, show_petite_vignette_gauche);
    }
    if(2 <= maxImage) {
    	prLdr.load(new URLRequest("img/r2.jpg"));
    	prLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, show_petite_vignette_droite);
    }
     
    function show_grande_vignette(event:Event):void {
    	var img:DisplayObject = pcLdr.content as DisplayObject;
    	img.scaleX = X_GRANDE_VIGNETTE;
    	img.scaleY = Y_GRANDE_VIGNETTE;
        photo_centre.addChild(img); 
    }
     
    function show_petite_vignette_gauche(event:Event):void {
    	var img:DisplayObject = plLdr.content as DisplayObject;
    	img.scaleX = X_PETITE_VIGNETTE;
    	img.scaleY = Y_PETITE_VIGNETTE;
        photo_gauche.addChild(img); 
    }
     
    function show_petite_vignette_droite(event:Event):void {
    	var img:DisplayObject = prLdr.content as DisplayObject;
    	img.scaleX = X_PETITE_VIGNETTE;
    	img.scaleY = Y_PETITE_VIGNETTE;
        photo_droite.addChild(img); 
    }
     
    //Définition des actions sur le formulaire
    btn_suivant.addEventListener(MouseEvent.MOUSE_DOWN, suivant);
    btn_precedent.addEventListener(MouseEvent.MOUSE_DOWN, precedent);
    photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomIn);
     
    function suivant(event:MouseEvent):void {
    	var plLdr:Loader = new Loader();
    	var pcLdr:Loader = new Loader();
    	var prLdr:Loader = new Loader();
    	plLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, spvg);
    	pcLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, sgv);
    	prLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, spvd);
    	while(photo_gauche.numChildren > 0) photo_gauche.removeChildAt(0);
    	plLdr.load(new URLRequest("img/r"+numImage+".jpg"));
    	numImage++;
    	while(photo_centre.numChildren > 0) photo_centre.removeChildAt(0);
    	if(numImage > maxImage) numImage = 1;
    	pcLdr.load(new URLRequest("img/r"+numImage+".jpg"));
    	while(photo_droite.numChildren > 0) photo_droite.removeChildAt(0);
    	if((numImage + 1) > maxImage) numImage = 1;
    	prLdr.load(new URLRequest("img/r"+(numImage + 1)+".jpg"));
     
    	function sgv(event:Event):void {
    		var img:DisplayObject = pcLdr.content as DisplayObject;
    		img.scaleX = X_GRANDE_VIGNETTE;
    		img.scaleY = Y_GRANDE_VIGNETTE;
    		photo_centre.addChild(img); 
    	}
     
    	function spvg(event:Event):void {
    		var img:DisplayObject = plLdr.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_gauche.addChild(img); 
    	}
     
    	function spvd(event:Event):void {
    		var img:DisplayObject = prLdr.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_droite.addChild(img); 
    	}
    }
     
     
    function precedent(event:MouseEvent):void {
    	var plLdr:Loader = new Loader();
    	var pcLdr:Loader = new Loader();
    	var prLdr:Loader = new Loader();
    	plLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, spvg);
    	pcLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, sgv);
    	prLdr.contentLoaderInfo.addEventListener(Event.COMPLETE, spvd);
    	while(photo_droite.numChildren > 0) photo_droite.removeChildAt(0);
    	prLdr.load(new URLRequest("img/r"+numImage+".jpg"));
    	numImage--;
    	while(photo_centre.numChildren > 0) photo_centre.removeChildAt(0);
    	if(numImage < 1) numImage = maxImage;
    	pcLdr.load(new URLRequest("img/r"+numImage+".jpg"));
    	while(photo_gauche.numChildren > 0) photo_gauche.removeChildAt(0);
    	if((numImage - 1) < 1) plLdr.load(new URLRequest("img/r"+maxImage+".jpg"));
    	else plLdr.load(new URLRequest("img/r"+(numImage - 1)+".jpg"));
     
    	function sgv(event:Event):void {
    		var img:DisplayObject = pcLdr.content as DisplayObject;
    		img.scaleX = X_GRANDE_VIGNETTE;
    		img.scaleY = Y_GRANDE_VIGNETTE;
    		photo_centre.addChild(img); 
    	}
     
    	function spvg(event:Event):void {
    		var img:DisplayObject = plLdr.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_gauche.addChild(img); 
    	}
     
    	function spvd(event:Event):void {
    		var img:DisplayObject = prLdr.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_droite.addChild(img); 
    	}
    }
     
    function zoomIn(event:MouseEvent):void {
    	var img:DisplayObject = photo_centre.content as DisplayObject;
    	img.scaleX = X_FULL_SIZE;
    	img.scaleY = Y_FULL_SIZE;
    	photo_centre.move(-10, -10);
    	//photo_centre.update();
    	photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomOut);
    }
     
    function zoomOut(event:MouseEvent):void {
    	var img:DisplayObject = photo_centre.content as DisplayObject;
    	img.scaleX = X_GRANDE_VIGNETTE;
    	img.scaleY = Y_GRANDE_VIGNETTE;
    	//photo_centre.update();
    	photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomIn);
    }
    Aussi, si vous connaissez un moyen pour que je n'aie pas à redéfinir les fonction show_grande_vignette() et cie dans mes fonctions suivant() et précédent() sans générer l'erreur #2025, je suis preneur.

  2. #2
    Membre éclairé Avatar de FrankOVD
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juin 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Juin 2005
    Messages : 438
    Par défaut Solution
    Voici enfin mon code final fonctionnel.

    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
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
     
    var numImage:Number = 1;
    var maxImage:Number = 26;
    var X_PETITE_VIGNETTE:Number = 120/1280;
    var Y_PETITE_VIGNETTE:Number = 90/960;
    var X_GRANDE_VIGNETTE:Number = 267/1280;
    var Y_GRANDE_VIGNETTE:Number = 200/960;
    var X_FULL_SIZE:Number = 500/960;
    var Y_FULL_SIZE:Number = 500/960;
     
     
    import flash.display.*;
    import flash.net.URLRequest;
    import flash.events.Event;
    if(maxImage > 0) {
    	photo_centre.load(new URLRequest("img/r1.jpg"));
    	photo_centre.addEventListener(Event.COMPLETE, show_grande_vignette);
    	photo_gauche.load(new URLRequest("img/r"+maxImage+".jpg"));
    	photo_gauche.addEventListener(Event.COMPLETE, show_petite_vignette_gauche);
    }
    if(2 <= maxImage) {
    	photo_droite.load(new URLRequest("img/r2.jpg"));
    	photo_droite.addEventListener(Event.COMPLETE, show_petite_vignette_droite);
    }
     
    function show_grande_vignette(event:Event):void {
    	var img:DisplayObject = photo_centre.content as DisplayObject;
    	img.scaleX = X_GRANDE_VIGNETTE;
    	img.scaleY = Y_GRANDE_VIGNETTE;
        photo_centre.source = img; 
    }
     
    function show_petite_vignette_gauche(event:Event):void {
    	var img:DisplayObject = photo_gauche.content as DisplayObject;
    	img.scaleX = X_PETITE_VIGNETTE;
    	img.scaleY = Y_PETITE_VIGNETTE;
        photo_gauche.source = img; 
    }
     
    function show_petite_vignette_droite(event:Event):void {
    	var img:DisplayObject = photo_droite.content as DisplayObject;
    	img.scaleX = X_PETITE_VIGNETTE;
    	img.scaleY = Y_PETITE_VIGNETTE;
        photo_droite.source = img; 
    }
     
    //Définition des actions sur le formulaire
    btn_suivant.addEventListener(MouseEvent.MOUSE_DOWN, suivant);
    btn_precedent.addEventListener(MouseEvent.MOUSE_DOWN, precedent);
    photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomIn);
     
    function suivant(event:MouseEvent):void {
    	zoomOut(event);
    	photo_gauche.addEventListener(Event.COMPLETE, show_petite_vignette_gauche);
    	photo_centre.addEventListener(Event.COMPLETE, show_grande_vignette);
    	photo_droite.addEventListener(Event.COMPLETE, show_petite_vignette_droite);
    	photo_gauche.load(new URLRequest("img/r"+numImage+".jpg"));
    	numImage++;
    	if(numImage > maxImage) numImage = 1;
    	photo_centre.load(new URLRequest("img/r"+numImage+".jpg"));
    	if((numImage + 1) > maxImage) numImage = 1;
    	photo_droite.load(new URLRequest("img/r"+(numImage + 1)+".jpg"));
     
    	function sgv(event:Event):void {
    		var img:DisplayObject = photo_centre.content as DisplayObject;
    		img.scaleX = X_GRANDE_VIGNETTE;
    		img.scaleY = Y_GRANDE_VIGNETTE;
    		photo_centre.source = img; 
    	}
     
    	function spvg(event:Event):void {
    		var img:DisplayObject = photo_gauche.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_gauche.source = img; 
    	}
     
    	function spvd(event:Event):void {
    		var img:DisplayObject = photo_droite.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_droite.source = img; 
    	}
    }
     
     
    function precedent(event:MouseEvent):void {
    	zoomOut(event);
    	photo_gauche.addEventListener(Event.COMPLETE, show_petite_vignette_gauche);
    	photo_centre.addEventListener(Event.COMPLETE, show_grande_vignette);
    	photo_droite.addEventListener(Event.COMPLETE, show_petite_vignette_droite);
    	photo_droite.load(new URLRequest("img/r"+numImage+".jpg"));
    	numImage--;
    	if(numImage < 1) numImage = maxImage;
    	photo_centre.load(new URLRequest("img/r"+numImage+".jpg"));
    	if(numImage < 2) photo_gauche.load(new URLRequest("img/r"+maxImage+".jpg"));
    	else photo_gauche.load(new URLRequest("img/r"+(numImage - 1)+".jpg"));
     
    	function sgv(event:Event):void {
    		var img:DisplayObject = photo_centre.content as DisplayObject;
    		img.scaleX = X_GRANDE_VIGNETTE;
    		img.scaleY = Y_GRANDE_VIGNETTE;
    		photo_centre.source = img; 
    	}
     
    	function spvg(event:Event):void {
    		var img:DisplayObject = photo_gauche.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_gauche.source = img; 
    	}
     
    	function spvd(event:Event):void {
    		var img:DisplayObject = photo_droite.content as DisplayObject;
    		img.scaleX = X_PETITE_VIGNETTE;
    		img.scaleY = Y_PETITE_VIGNETTE;
    		photo_droite.source = img; 
    	}
    }
     
    function zoomIn(event:MouseEvent):void {
    	var img:DisplayObject = photo_centre.content;
    	img.scaleX = X_FULL_SIZE;
    	img.scaleY = Y_FULL_SIZE;
    	photo_centre.move(-463,-365);
    	photo_centre.width = 667; 
    	photo_centre.height = 500; 
    	//photo_centre.update();
    	photo_centre.removeEventListener(MouseEvent.MOUSE_DOWN, zoomIn);
    	photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomOut);
    }
     
    function zoomOut(event:MouseEvent):void {
    	var img:DisplayObject = photo_centre.content;
    	img.scaleX = X_GRANDE_VIGNETTE;
    	img.scaleY = Y_GRANDE_VIGNETTE;
    	photo_centre.width = 267; 
    	photo_centre.height = 200; 
    	photo_centre.move(-133.5, -102);
    	photo_centre.removeEventListener(MouseEvent.MOUSE_DOWN, zoomOut);
    	photo_centre.addEventListener(MouseEvent.MOUSE_DOWN, zoomIn);
    	//suivant();
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Crystal Reports 9] comment insérer une image dans Détails
    Par VVE dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 22/10/2003, 17h06
  2. Comment copier une image dans le presse papier.
    Par cprogil dans le forum Langage
    Réponses: 7
    Dernier message: 09/09/2003, 15h54
  3. Peut on mettre une image dans une BD MySQL ?
    Par maddog2032 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 25/07/2003, 16h18
  4. Une image dans un composant ?
    Par bjl dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/03/2003, 11h28
  5. [VB6] [Excel] Insérer une image dans une feuille
    Par mathias dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 09/10/2002, 07h44

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