2009-04-16 4 views
0

J'essaie d'utiliser setMask pour créer 3 "fenêtres" de movieClips masqués dans AS2 (CS3).Pourquoi setMask ne fonctionne-t-il pas dans cet exemple après avoir fonctionné une seule fois?

La fenêtre principale est masquée correctement.

Après avoir cliqué sur un bouton, je crée deux fenêtres supplémentaires, mais le refus d'être masqué Pas d'erreur, c'est juste que le masque n'est pas appliqué, et le rectangle du masque est toujours visible.

Les 3 fenêtres sont masquées en utilisant la même fonction, avec un paramètre MC différent.

J'imbriqué MCs, mais au fond, la fenêtre principale est masquée comme:

_level0.GUI.OBJ.mainWinMC.mainWindowMC.mainWindow.setMask(_level0.GUI.OBJ.mainWinMC.mainWindowMC.mainWindow_PlanMask); 

mainWindow_PlanMask contient un MC avec un rectangle rouge. (Note: J'utilise des variables MovieClip et j'ai posté ici leur chemin tracé MovieClip Cela fonctionne bien

Après avoir appuyé sur un bouton, je mise deux masques:..

_level0.GUI.OBJ.mainWinMC.side0MC.side0.setMask(_level0.GUI.OBJ.mainWinMC.side0MC.side0_PlanMask); 

_level0.GUI.OBJ.mainWinMC.side1MC.side1.setMask(_level0.GUI.OBJ.mainWinMC.side1MC.side1_PlanMask); 

side0_PlanMask and side1_PlanMask rectangles contiennent aussi. Mais dans ces cas, le rectangle rouge est maintenu visible et le masque n'est pas appliquée. Je ne sais pas pourquoi. Toute aide sera appréciée.

[Modifier] application cacheAsBitmap tous les MCs à la fois masque et MCs masqués à t Le _root a causé l'échec du premier fonctionnement du masque.

Répondre

1

Les masques dans Flash peuvent être imprévisibles. Essayez de définir cacheAsBitmap sur true pour tout.

MISE À JOUR:

Essayez le réglage cacheAsBitmap pour chaque MovieClip en descendant du _root. Essayez d'incorporer toutes les polices sur tous les champs de texte qui se trouvent dans le MovieClip que vous masquez - en fait, assurez-vous d'avoir incorporé toutes vos polices partout.

+0

J'ai mis cacheAsBitmap à true sur MC et le masque MC, avant le setMask et après le setMask. Ne fonctionne pas. C'était une bonne idée, cependant. Je suis à la recherche de telles idées depuis que j'ai déjà essayé tant de changements ... Merci. – Eliram

0

il est difficile de vous aider à déboguer avec les informations fournies

vous pouvez essayer:

  1. assurez-vous que vous avez correctement nommé les MovieClips avec un nom d'instance incorrectes (parfois, vous trouverez que vous avez oublié pour nommer quelques-uns des MovieClips)

  2. ouvrir un nouveau fla et faire une version beaucoup plus simple des choses que vous voulez faire, de sorte que vous pouvez isoler les erreurs.

btw, pas vraiment nécessaire, mais essayez d'utiliser _root au lieu de _level0, ce sera plus clair.

+0

Je n'utilise ni _level0 ni _root. J'utilise des variables MovieClip, je viens de poster leurs chemins ici (comme affiché par une commande de trace). 1.Tous les MC sont créés dynamiquement dans AS, donc je ne peux pas vraiment oublier d'en nommer. 2. Le premier exemple fonctionne, et j'utilise la même fonction. – Eliram

Questions connexes