Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
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 24/07/2007, 17h06   #1
Membre actif
 
Homme
Inscription : octobre 2006
Messages : 664
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : octobre 2006
Messages : 664
Points : 197
Points : 197
Par défaut [FLASH CS3] Problème de scrolling horizontal d'images ?

Bonjour,

Je voudrais réaliser une bannière de 600x98px dans laquelle je souhaite faire défiler des images.

Je débute avec Flash CS3, j'ai donc créé un nouveau document "banniere.fla" dans lequel j'ai créé un objet "Clip" qui s'appelle "banniere" et qui contient une suite d'images côte à côte de même hauteur 98px.

J'ai placé mon clip "banniere" sur ma "Séquence 1" de mon "Calque 1".

Je me suis inspiré de cet exemple pour le scroll :
http://www.kirupa.com/developer/mx/infinite.htm

Cependant, lorsque j'exécute mon fichier, il me met les erreurs suivantes :
Citation:
1180: Appel à une méthode qui ne semble pas définie, onClipEvent.
1120: Accès à la propriété non définie load.
1120: Accès à la propriété non définie xcenter.
1120: Accès à la propriété non définie speed.
1180: Appel à une méthode qui ne semble pas définie, onClipEvent.
1120: Accès à la propriété non définie enterFrame.
1120: Accès à la propriété non définie _root.
1120: Accès à la propriété non définie xcenter.
1120: Accès à la propriété non définie _x.
1120: Accès à la propriété non définie _x.
1120: Accès à la propriété non définie speed.
Code :
1
2
3
4
5
6
7
8
9
10
11
 
onClipEvent (load)
{
   xcenter=150;
   speed=1/10;
}
onClipEvent (enterFrame)
{
   var distance=_root._xmouse-xcenter;
   _x+=(distance*speed);
}
Que dois-je faire ?

Merci d'avance,
ZiP
[ZiP] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2007, 19h39   #2
Rédacteur
 
Avatar de freegreg
 
Inscription : août 2002
Messages : 4 395
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France, Gard (Languedoc Roussillon)

Informations forums :
Inscription : août 2002
Messages : 4 395
Points : 5 227
Points : 5 227
Salut,

le pb vient du fait que tu essaie de faire fonctionner un code désormais "obsolète" depuis la version 6 et on en est à la version 9.
Flash CS3 est "fait" pour fonctionner avec la nouvelle version ActionScript : AS3.

Pour résoudre ton problème, essaie :

Code :
1
2
3
4
5
6
7
var xcenter:Number = 150;
var speed:Number = 1/10;
tonClip.onEnterFrame = function()
{
   var distance=_root._xmouse-xcenter;
   this._x+=(distance*speed);
}
Exécutes ton animation en compatibilité ActionScript 2.
__________________
Avant toutes questions, consultez nos différentes ressources disponibles gratuitement : XML, Développement Web, Flash/Flex, (X)HTML, CSS, JavaScript, AJAX, ASP
Vous voulez partager des ressources concernant les technologies ci-dessus : contactez-moi
freegreg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2007, 22h30   #3
Membre actif
 
Homme
Inscription : octobre 2006
Messages : 664
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : octobre 2006
Messages : 664
Points : 197
Points : 197
J'ai suivi vos conseils et changé mon code ainsi que ça compatibilité pour "ActionScript 1.0 & 2.0" mais je rencontre encore des erreurs :

Code :
1
2
3
4
5
6
7
8
 
var xcenter:Number = 150;
var speed:Number = 1/10;
banniere.onEnterFrame = function()
{
   var distance=_root._xmouse-xcenter;
   this._x+=(distance*speed);
}
Citation:
1119: Accès à la propriété onEnterFrame peut-être non définie, via la référence de type static Class.
1120: Accès à la propriété non définie _root.
Merci pour votre aide,
ZiP
[ZiP] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 08h51   #4
Membre actif
 
Homme
Inscription : octobre 2006
Messages : 664
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : octobre 2006
Messages : 664
Points : 197
Points : 197
J'ai modifié mon code pour :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import flash.events.MouseEvent;


var xcenter:Number = 150;
var speed:Number = 1/10;

/*
banniere.onEnterFrame = function()
{
   var distance = _root._xmouse - xcenter;
   this._x += (distance * speed);
}
*/

function onMouseMove(event:MouseEvent):void
{
	var distance = stage.mouseX - xcenter;
	banniere._x += (distance * speed);
}

stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
J'ai encore les erreurs suivantes :
Citation:
1119: Accès à la propriété _x peut-être non définie, via la référence de type static Class.
1119: Accès à la propriété _x peut-être non définie, via la référence de type static Class.
Vous avez une idée ?

Merci.
[ZiP] est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/07/2007, 16h40   #5
Membre actif
 
Homme
Inscription : octobre 2006
Messages : 664
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Pas de Calais (Nord Pas de Calais)

Informations forums :
Inscription : octobre 2006
Messages : 664
Points : 197
Points : 197
Bonjour,

J'ai refais complètement mon fichier en ActionScript 3 mais j'ai une petite erreur :
Citation:
TypeError: Error #1007: Tentative d'instanciation sur un élément non constructeur.
at banniere$iinit()
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
package
{
	import flash.display.MovieClip;
	import flash.utils.Timer;
    import flash.events.TimerEvent;
 
	public class banniere extends MovieClip
    {
		public function banniere()
        {
			var MonTimer:Timer = new Timer[50];
			MonTimer.addEventListener(TimerEvent.TIMER, timerHandler);
			MonTimer.start();
		}
 
		public function timerHandler(event:TimerEvent):void
		{
			trace('TIMER !');
		}
	}
}

Mon projet : http://cjoint.com/data/hAqLUDr4KQ_banniere.zip

Merci,
ZiP
[ZiP] est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h42.


 
 
 
 
Partenaires

Hébergement Web