flash : printjob

vector

Membre actif
16 Novembre 2004
157
1
51
virginie.penalba.free.fr
Bonjour tout le monde !
J'ai un soucis avec ma fonction printjob : elle marche bien quand je teste le swf seul, ça imprime la zone demandé.
Mais ce swf est dans un autre swf (mon site principale) appelé par un clip cible. Les 2 swf sont bien parametrés en as2 flash 9.
Ce qui ce passe : quand je clic pour imprimer, la fenetre d'impression s'ouvre bien mais une fois après avoir appuyé sur imprimer je me retrouve sur la frame 1 de mon site principale et ça imprime la frame 1...
merci
dites moi si c'est pas clair..
voici le code :
Bloc de code:
//on masque le delimiteur, pas besoin de le voir on en a besoin que dans le scenario 
//pour definir visuellement la zone d´impression 
this.delimiteur._visible = false; 
 
 
//cette fonction est appelée quand l´utilisateur clique sur le bouton : 
//le simple fait de définir cette fonction transforme le simple clip 
//en bouton avec la ptite main quand on passe dessus 
this.imp.onRelease = function() { 
     
    //pour imprimer une zone, il faudra donner ses limites, on les calcule avec 
    //la position du clip 'delimiteur´ pour pouvoir après changer la zone d´impression 
    //facilement juste en bougeant le clip delimiteur dans la scene 
 
    //les _parent c´est parce que sinon on est dans la portée du bouton. 
    var xMinImpression = this._parent.delimiteur._x; 
    var yMinImpression = this._parent.delimiteur._y; 
    var xMaxImpression = this._parent.delimiteur._x + this._parent.delimiteur._width; 
    var yMaxImpression = this._parent.delimiteur._y + this._parent.delimiteur._height; 
     
    //maintenant qu´on a défini la zone à partir de notre rectangle, on y va :-) 
    var printJob:PrintJob = new PrintJob(); 
    var resultat:Boolean = printJob.start(); 
    if (resultat) { 
        printJob.addPage(0,{xMin:xMinImpression,xMax:xMaxImpression,yMin:yMinImpression, 
yMax:yMaxImpression}, {printAsBitmap:true}, _currentframe); 
        printJob.send() 
        delete printJob; 
    } else { 
        trace("l´opération à été annulée par l´utilisateur") 
        delete printJob; 
    } 
}
 
ayant directement commencé par l' as 3 sans passer par l'as 2, je ne peux pas t'aider mais il aurait été plus judicieux de mettre dans ton titre "as 2" :)