Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS3
AS3 Questions relatives à la programmation ActionScript 3 (Cours AS3)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/01/2011, 15h16   #1
Invité de passage
 
Inscription : janvier 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : janvier 2011
Messages : 2
Points : 0
Points : 0
Par défaut Adaptation d'un code AS3

Bonjour,

Voilà, je travail sur un site actuellement, je dois créer une animation flash avec un diaporama de plusieurs photos qui défile avec des boutons, c'est l'utilisateur qui doit appuyer sur PLAY, il peut faire stop et revenir sur les imges qui lui plait.

J'ai pris un projet pré fait dans flash que j'ai adapté. Il se compose de 3 calques, 1 avec toutes les images l'un à la suite de de l'autre, un autre avec le code et un autre pour les boutons.

Il marche correctement mais je voudrais que le diapo se lance DIRECTEMENT sans que le client clique sur play (le bouton afficherai directement pause et puisqu'il sera lancé)

Je vous montre le code :


Code :
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
// USER CONFIG SETTINGS =====
var autoStart:Boolean = false; //true, false
var secondsDelay:Number = 1; // 1-60
// END USER CONFIG SETTINGS
 
 
 
// EVENTS =====
playPauseToggle_mc.addEventListener(MouseEvent.CLICK, fl_togglePlayPause);
function fl_togglePlayPause(evt:MouseEvent):void
{
    if(playPauseToggle_mc.currentLabel == "play")
    {
        fl_startSlideShow();
        playPauseToggle_mc.gotoAndStop("pause");
    }
    else if(playPauseToggle_mc.currentLabel == "pause")
    {
        fl_pauseSlideShow();
        playPauseToggle_mc.gotoAndStop("play");
    }
}
next_btn.addEventListener(MouseEvent.CLICK, fl_nextButtonClick);
prev_btn.addEventListener(MouseEvent.CLICK, fl_prevButtonClick);
function fl_nextButtonClick(evt:MouseEvent):void
{
    fl_nextSlide();
}
function fl_prevButtonClick(evt:MouseEvent):void
{
    fl_prevSlide();
}
var currentImageID:Number;
var slideshowTimer:Timer;
var appInit:Boolean;
function fl_slideShowNext(evt:TimerEvent):void
{
    fl_nextSlide();
}
// END EVENTS
 
// FUNCTIONS AND LOGIC =====
function fl_pauseSlideShow():void
{
    slideshowTimer.stop();
}
function fl_startSlideShow():void
{
    slideshowTimer.start();
}
function fl_nextSlide():void
{
    currentImageID++;
    if(currentImageID >= totalFrames)
    {
        currentImageID = 0;
    }
    gotoAndStop(currentImageID+1);
}
function fl_prevSlide():void
{
    currentImageID--;
    if(currentImageID < 0)
    {
        currentImageID = totalFrames+1;
    }
    gotoAndStop(currentImageID-1);
}
 
if(autoStart == true)
{
   fl_startSlideShow();
   playPauseToggle_mc.gotoAndStop("pause");
} else {
     gotoAndStop(1);
}
function initApp(){
    currentImageID = 0;
    slideshowTimer = new Timer((secondsDelay*1000), 0);
    slideshowTimer.addEventListener(TimerEvent.TIMER, fl_slideShowNext);
}
if(appInit != true){
    initApp();
    appInit = true;
}
// END FUNCTIONS AND LOGIC
 
-----------------------------------------------
Quand je met TRUE au tout début, il me met une erreur, la voici :


Citation:
TypeError: Error #1009: Il est impossible d'accéder à la propriété ou à la méthode d'une référence d'objet nul.
at ANIM_fla::MainTimeline/fl_startSlideShow()
at ANIM_fla::MainTimeline/frame1()

Voilà, je vous remercie d'avance, j'espère avoir été assez clair.

Bonne journée
edouin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2011, 17h49   #2
Membre régulier
 
Romain Dedenis
Inscription : janvier 2010
Messages : 68
Détails du profil
Informations personnelles :
Nom : Romain Dedenis
Localisation : France, Gironde (Aquitaine)

Informations forums :
Inscription : janvier 2010
Messages : 68
Points : 87
Points : 87
J'ai déjà eu cette erreur et le problème venait du fait que j'avais mis du code sur une frame ou il y avait deja une animation, j'avais simplement créé un nouveau calque et c'était bon.
Romain D. est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h51.


 
 
 
 
Partenaires

Hébergement Web