Bonjour,

Dans une classe actionscript, j'ai une variable obj_extent (instance d'une classe Extent que j'ai créée), un movie clip movie_geometry. J'implémente quelques fonctions du movie clip, à l'intérieur desquelles je voudrait mettre à jour mon obj_extent mais il est undefined...
Voici un bout de code :
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
class zig.MovieZigRectangle extends zig.MovieZig {
	private var obj_extent:Extent;
 
	public function MovieZigRectangle(parent_param:MovieClip, index:Number) {
		this.obj_extent = new Extent();
this.parent = parent_param;	    this.parent.createEmptyMovieClip("movie_geometry"+index,this.parent.getNextHighestDepth());
		this.movie_geometry = this.parent["movie_geometry"+index];
 
 
		this.movie_geometry.onMouseDown = function() { 
			delete this.onEnterFrame;
 
			this._x=this._xmouse;
			this._y=this._ymouse;
 
     		        this.onEnterFrame = function() {
				var widthDraw =  _xmouse - this._x;
				var heightDraw = _ymouse - this._y;
				this.draw(widthDraw,heightDraw);
			}
		};
		this.movie_geometry.onMouseUp = function() {
			trace(obj_extent); // DONNE UNDEFINED...
			delete this.onEnterFrame;
			delete this.onMouseDown;
		};
		this.movie_geometry.draw = function(widthDraw:Number, heightDraw:Number) {			
			// mise à jour de l'extent
			//TODO à convertir en coord géo
			if(widthDraw >= 0) {
				obj_extent.setXmin(this._x);
				obj_extent.setXmax(this._x + widthDraw);
			}
			else {
				obj_extent.setXmin(this._x + widthDraw);
				obj_extent.setXmax(this._x);
			}
			if(heightDraw >= 0) {
				obj_extent.setYmin(this._y);
				obj_extent.setYmax(this._y + heightDraw);
			}
			else {
				obj_extent.setYmin(this._y + heightDraw);
				obj_extent.setYmax(this._y);
			}
		}
	}

Il me dit que c'est undefined dans le trace(obj_extent) car à ce moment là le scope (this) est sur le movie clip et non sur ma classe... Avez vous une idée ?

Merci !

WwAvE