PDA

Volledige versie bekijken : unloadMovie <-> attachMovie


Nowan
%Europe/Berlin %021 %2005, 01:30
Hey iedereen, ik zoek als sinds gisteren naar een oplossing maar ik kom er niet echt uit...

Het concept is het volgende:

In een ASgemaakte movieclip [_root.foto_mc] attach ik een afbeelding uit de library,
echter, als de gebruiker op een ander onderwerp klikt moet ook de afbeelding veranderen.
De afbeeldingen zijn transparant, dus kunnen niet gewoon op elkaar gelegd worden,
dit zou immers de file ook gaan vertragen. Daarom wil ik telkens de 'host-MC' leegmaken.
Dat leegmaken lukt, maar hij wil erna geen andere movie meer attachen.


this.onPress = function()
{ _root.foto_mc.unloadMovie(); // legen
_root.foto_mc.attachMovie("fotoUniform", "foun", _root.foto_mc.getNextHighestDepth()); //attachen
_root.foto = "foun"; // aan een variabele meegeven welke foto er is ingeladen
}

=> de attachMovie code is correct, want zonder unloadMovie doet ie het wel, maar dan kom ik in de problemen met die tranparancy...

Als iemand alstublieft wat tips of hints zou kunnen geven, zou ik dankbaar zijn.

Alvast bedankt en met vriendelijke groeten,

Nowan

Dauntless
%Europe/Berlin %036 %2005, 01:52
Da's nogal vreemd, F1 zegt hier idd niets over...

Ook het volgende werkt niet
this.attachMovie("mc", "mc", 1);
this.unloadMovie();
this.attachMovie("mc", "mc2", 2);

Je kan ook altijd je holder ff verwijderen met removeMovieClip() en hem terug zetten met createEmptyMovieClip() ...

Veel success :)

Nowan
%Europe/Berlin %100 %2005, 03:25
Weet ik, maar dat was men laatste oplossing :)

Ik probeer het, ik laat het weten en post correcte code voor in de toekomst ;)

Nowan
%Europe/Berlin %122 %2005, 03:56
MovieClip.removeMovieClip()

Description
Method; removes a movie clip instance created with duplicateMovieClip(), MovieClip.duplicateMovieClip(), or MovieClip.attachMovie().

=> dus geen createEmptyMovieClip :s
hij verwijdert hem nog steeds niet, ik probeer nu om de attached movieclips te verwijderen ipv de holder te legen...

EDIT:


removeMovieClip()

Usage
removeMovieClip(target)

Parameters
target The target path of a movie clip instance created with duplicateMovieClip(), or the instance name of a movie clip created with MovieClip.attachMovie() or MovieClip.duplicateMovieClip().

Description
Function; deletes the specified movie clip.


waarschijnlijk bedoelde Dauntless die :p

Nowan
%Europe/Berlin %146 %2005, 04:31
Ok mensen, ik ben er uit.

Ik heb wat creativiteit aan de dag moeten leggen, maar het is gelukt, voor diegenen die ooit dit topic opzoeken, een kleine "tuto".

Hoe laad ik verschillende movieclips uit de library in op dezelfde plaats, in combinatie met transparancy.

Wel, als je gewoon twee MC's over elkaar zet, overlappen ze, dit door hun depth.
Normaal zie je dit niet, als de overlappende >= de onderlggende tenminste.

Praktisch voorbeeld:
In mijn geval wou ik wanneer de gebruiker een andere tekst wou lezen en dus op een knop drukte, een andere foto vanboven inladen. Omdat ik een graphic die een steen moet voorstellen als achtergrond gebruik, wou ik transparancy om de textuur wat te doen doorlopen.

Als je transparancy gebruikt zie je dit natuurlijk wel, en dit is natuurlijk niet wat we willen, hieronder de code met uitleg.

Op de _root

_root.createEmptyMovieClip("foto_mc",_root.getNextHighestDepth()); // nieuwe mc voor foto
_root.foto_mc._x = 355; //positioneren nieuwe mc
_root.foto_mc._y = 34;
_root.foto_mc._alpha = 35; //alpha nieuwe mc

var foto:String = "foge"; //variabele waarin de huidige foto wordt gezet, nu de eerste foto die wordt weergegeven.

_root.foto_mc.attachMovie("fotoGeschiedenis", "foge", _root.foto_mc.getNextHighestDepth()); // hier zet je de foto neer die als eerste wordt weergegeven.


Op de eerste knop, die verwijst naar de standaard inhoud

this.onPress = function() // gebruiker klikt
{
var mc:String = "_root.foto_mc." + _root.foto; // hier maak je een variabele waarin het pad naar de huidige foto zit.
removeMovieClip(mc); // hier verwijder je de huidige foto
_root.foto_mc.attachMovie("fotoGeschiedenis", "foge", this.getNextHighestDepth()); // en hier zet je de nieuwe.
_root.foto = "foge"; //en we laten de _root weten welke foto er nu staat.
};


Op de tweede knop, andere banner

this.onPress = function() // gebruiker klikt
{
var mc = "_root.foto_mc." + _root.foto //pad instellen
removeMovieClip(mc); //verwijderen
_root.foto_mc.attachMovie("fotoUniform", "foun", _root.foto_mc.getNextHighestDepth()); //nieuwe inladen
_root.foto = "foun"; //variabele bijwerken
};


enz, enz, ...

Note: Als je een functie niet begrijpt kan je ze opzoeken in de help functie van Flash (F1)

Ik hoop dat het wat duidelijk is, iig bedankt aan Dauntless voor de hulp, en als er nog vragen zijn kan je me altijd msn'n / aim'n / mailen / pm'n / irc'n :p

Dauntless
%Europe/Berlin %410 %2005, 10:51
=> dus geen createEmptyMovieClip :s
Jwel hoor :). Het is beter om myMc.removeMovieClip() te gebruiken dan removeMovieClip(mc)...

En hij werkt ook voor createEmptyMovieClip's:
this.createEmptyMovieClip("test", 1);
test.lineStyle(1, 0xFFFF00);
test.beginFill(0xFFFF00, 100);
test.moveTo(10, 500);
test.lineTo(90, 60);
test.lineTo(0, 0);
test.endFill();
test.removeMovieClip();

Nowan
%Europe/Berlin %506 %2005, 13:09
Deed het bij mij niet :s

kzal het alsnog ff proberen en het late weten :p

Oh ja, Dauntless, klein vraagje...

Ik las verder in het forum dat je iemand zei om te upgraden naar 7.2, om de scrollbar component te hebben... er is jou toevallig nx bekend over errors hiervan?

Ik krijgem ni geüpdate, zevert over men exe die niet gelijk is... :o

maar ik denk dat we wel weten waar dat door komt :rolleyes:

Nowan
%Europe/Berlin %512 %2005, 13:17
mnee...

de my_mc.removeMovieClip(); doet het hem niet...

vreemd... maar het werkt, dus we klagen niet :p