[flashmx] extern plaatje in swf laden als ik op button klik

ik heb hier een galerie gemaakt (button 'galerie') waarmee er mooi plaatjes langs komen scrollen. nu wil ik dat als ik op zo'n plaatje klik er een vergroting wordt geladen in het flashbestand. Om het bestand nou nog een beetje toegankelijk te houden wil ik de vergrotingen inladen vanuit een externe map met jpg bestanden. Weet iemand een tutorial of een voorbeeld van iets dergelijks? dus dat ik bijvoorbeeld op een plaatje klik en er dan bijvoorbeeld -in het flashbestand- een schermpje in beeld komt waarin de jpg geladen wordt.

ik had wel ergens een flashcomponent gevonden waarmee het mbv xml werd gedaan maar het is geen optie om deze hele galerie helemaal om te bouwen met nieuwe technieken. deze site is al een tijd geleden gebouwd en het is nu alleen belangrijk dat er vergrotingen van de reeds aanwezige plaatjes kunnen worden ingeladen.

hier staat het: http://www.desalniettemin.nl/studiov/flash/index.html

maak een nieuwe movieclip aan in de grootte van je gewenste popup, zet die op de stage, geef de mc een instancenaam, bv holder en laadt de jpg door on (press(){loadMovie("naam.jpg", "_root.holder")} in de mc kan je dan ook een 'sluitknop' maken , venster sluiten zou dan unLoadMovie("_root.holder") zijn

werkt niet bij mij. mijn galerie staat ook in een aparte scene, dan werkt het toch niet met _root? weet iemand een werkend voorbeeld ergens online te staan?

edit: wat is het verschil tussen loadMovie en loadMovieNum? wat betekent dat level? (bij loadmovieNum() kun je een swf of jpeg bestand in een specifiek level laden)

ok ik heb dit gevonden waar ik mee vooruit kan:

http://www.flashfocus.be/ShowDetail.asp?NewsId=6532

LoadMovie(url, taget, method) importeerd een .swf of .jpg van de aangegeven [i:ccc65d404f]url[/i:ccc65d404f] in de aangegeven [i:ccc65d404f]target[/i:ccc65d404f] mc

De LoadMovieNum(url, levelnum, method) functie is bijna hetzelfde al de LoadMovie() maar wordt gebruikt met aanduiding voor [i:ccc65d404f]level[/i:ccc65d404f] (0, 1, 2, enz) i.p.v. [i:ccc65d404f]target[/i:ccc65d404f]

Elke tijdlijn (mc of root) heeft een bepaalde diepte waardoor er dingen over of onder elkaar heen komen te staan. (getDepth() swapDepth()) binnen een .swf
Bij levels gaat het om de overlapping van swf files die worden geladen in de player. De eerste .swf die wordt geladen in een player komt daarbij in de laagste level (_level0). Met de LoadMovieNum() Kun je .swfs laden in een hoger level of zelfs de hele basis .swf vervangen in _level0.

Jy moet gewoon LoadMovie() gebruiken.
[i:ccc65d404f]_root[/i:ccc65d404f] verwijst naar de hoofdtijdlijn en moet dus goed zijn (in weze plakt flash deze achter elkaar)
Probeer ook een harde URL te gebruiken;)

ok bedankt. maar als ik een movieclip maak, deze instance een naam geef (holder) en deze op de stage plaats dan wordt deze meteen afgespeeld (frame1). hoe voorkom ik dit (dus dat ie pas speelt als er op de button wordt geklikt)? waar plaats ik de mc waarin de image geladen moet worden?

bovenstaande is volgens het voorbeeld van ‘XXX’

in de mc een stop() te zetten en aan de button de actie ("[i:cc0521addf]on()[/i:cc0521addf]") plaats.mc.play() te geven of in je tijdlijn (frame01) een stop zetten dat is het scene,GotoAndPlay, 1

wil iemand als hij/zij tijd en zin heeft even naar dit bestandje kijken?

http://www.desalniettemin.nl/studiov/imagetest.sitx

ik heb dus nu een button en een movieclip, als ik op de button klik wordt de externe jpg wèl geladen, maar de movieclip zie ik nergens (het is maar een grijs vlak maar het gaat om het principe) meer.

[url=http://www.sauce.nl/test.swf]test[/url] [url=http://www.sauce.nl/imagetestOK.zip]imagetest.zip[/url]

Nu zie je hem aan het begin wel, en het is logisch dat hij weggaat omdat je daar iets inlaad. Als je altijd een vlak wilt blijven zien moet je er nog een vlak achter bijzetten (in een andere laag)

nou hij moet dus juist niet aan het begin zichtbaar zijn, maar pas als de externe jpg wordt geladen: zo kan ik dan ook een button aanbrengen met

on (release) {
unloadMovie(“holder”);
}

om het scherm weer weg te krijgen.

de bedoeling is dat wanneer de gebruiker op 1 van de plaatjes in de galerie klikt, er een scherm over de gehele galerie verschijnt waar de uitvergroting in wordt geladen. als het venster weer weg moet dan klikt de gebruiker dus op een button en het scherm (movieclip) verdwijnt weer.

edit: laat maar volgens mij heb ik em eindelijk door :smiley: alleen verdwijnt nu wel de jpg maar niet de tweede laag (achtergrond)…zucht

[quote:1a4ec792f3="404"]laat maar volgens mij heb ik em eindelijk door :D alleen verdwijnt nu wel de jpg maar niet de tweede laag (achtergrond)..zucht[/quote:1a4ec792f3] Door zelf te pielen leer je het meest ;P ! succes.

nou ja dit wordt niks meer, in het flashbestand waar het in moet (de galerie) zitten zoveel lagen dat ik er geen fluit meer van begrijp. :x

[quote:af53440de3="404"]nou ja dit wordt niks meer, in het flashbestand waar het in moet (de galerie) zitten zoveel lagen dat ik er geen fluit meer van begrijp. :x[/quote:af53440de3] Begin met de techniek, (scheelt zeker wel wat lagen?) Gewoon doorgaan of zoeken naar de beste oplossing van mijn part helemaal overnieuw beginnen, go for it! tip: geef ze voor jouw begrijpelijke namen en wees praktisch.

bedankt voor je support, ik ga er van de week wel mee verder, ik ga vanavond nog even socialiseren 8)

om de mc holder pas te tonen als je op de knop klikt kun je in je main timeline op een apart action script laag dit zetten : _root.holder.visible=false op je knop om de vergroting te tonen zet je dan on (press){ _root.holder.visible=true; loadMovie("imagesgroot/pict1.jpg", "_root.holder") }

ik heb het weer opgepakt en het script laadt mooi een extern plaatje, maar hoe zorg ik er nou voor dat het plaatje pas geladen wordt als de animatie van de movieclip (holder) helemaal gespeeld is?

dus ik druk op de knop:

[code:1:4b3615bde8]
on (press){
_root.holder.visible=true;
loadMovie("images/1.jpg", "_root.holder")
}
[/code:1:4b3615bde8]

en holder begint te spelen (een kader dat met een motion tween opent) en DAARIN moet dan het plaatje komen.

Zoals ik het nu heb begint mc ‘holder’ meteen en het plaatje wordt ook direct geladen maar NIET IN de mc holder maar erbuiten. Hoe kan dit? Moeten de button en de mc eigenlijk wel op hetzelfde frame staan, want nu worden ze tegelijk geladen natuurlijk.

heb je een vb bestandje ? link op de eerste pagina van dit topic werkte niet

ik heb het nu zoals in dit voorbeeld:

http://desalniettemin.nl/macosx/test.zip

een button

[code:1:78f6ac7ec6]
on (release) {
_root.mtclip.loadMovie ("images/4.jpg");
}
[/code:1:78f6ac7ec6]

en als ik daar op klik wordt het bestand (4.jpg) geladen in een empty MovieClip met instancenaam ‘mtclip’

op deze emptymovieclip zit een unloadscriptje:

[code:1:78f6ac7ec6]
on (release) {
_root.mtclip.unloadMovie("images/4.jpg");
}
[/code:1:78f6ac7ec6]

so far, so good. Maar hoe krijg ik het nu voor elkaar dat als ik op de knop druk:

1 een andere movieclip afspeelt (waarin een frame wordt opgebouwd dat ik om de foto heen wil hebben)
2 als deze movieclip is afgespeeld image 4.jpg pas wordt geladen IN dat frame

dus: ik druk op de knop, het filmpje (movieclip) start (bijvoorbeeld zoiets: http://www.desalniettemin.nl/macosx/frame.swf en DAN pas komt de foto (images/4.jpg). en bij het klikken op het kruisje verdwijnt de hele boel weer.

eigenlijk heel simpel maar mij lukt het niet :x

[url=http://www.miransweb.nl/diversen/test.zip]hier[/url] staat een aangepast fla bestand, ik hoop dat dit is wat je bedoeld ?

:D woei, dat was wat ik bedoelde. onwijs bedankt. ik zie nu ook de logica ervan. ik heb helemaal niet gedacht aan een oplossing met gotoandplay/stop. ik ga hiermee verder. top!