Volledige versie bekijken : Veel foto's, 1 holder
chonazz
%Europe/Berlin %554 %2005, 14:18
Beste mensen,
hoe kan ik uit een map met foto's, en een map met tekstjes de juiste uitladen?
Ik heb in m'n fla een aantal dynamic tekstvelden, en er wordt een lege movieclip aangemaakt als imageholder:
onEnterFrame
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie("foto","imageHolder");
imageHolder._x = 375;
imageHolder._y = 18;
Maar nu zou hij als je op een knop klikt de juiste foto en het juiste tekstje uit een map moeten laden...
Je hebt dus 20 knoppen, 20 foto's en 20 tekstjes?
Hoe kan ik dit oplossen zonder voor iedere knop de hele code opnieuw te moeten schrijven?
Dan zou ik ook nog een manier moeten hebben om de foto's juist te laden, je hebt foto's met width 200, height 150 en je hebt er met width 150 en height 200.
Hoe kan ik flash hier automatisch onderscheidt tussen laten maken? zodat de movieclip zich aanpast? Maar toch op de juiste plaats blijft staan?
Groeten
jonas
theFlashWizard
%Europe/Berlin %618 %2005, 15:49
www.gotoAndLearn.com
flash and xml slideshow ;)
en het zou tevens lonen eens te zoeken op dingen als photoviewer..
chonazz
%Europe/Berlin %816 %2005, 20:35
Ja maar dat is toch niet wat ik nodig heb, ik had de tut op gotoAndLearn al gezien.
Maar ik heb een hele boel foto's met allemaal namen, dus niet foto1 tot foto 20 ofzo. Als zou dat idd handiger zijn, maar het zijn mensen, en hun foto moet gewoon bij hun text komen.
Nu heb ik ook voor iederer foto een button, en ik heb een functie:
function praesidium(){
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie("foto","imageHolder");
imageHolder._x = 375;
imageHolder._y = 18;
};
En iedere keer je op een naam klikt, wordt deze functie aangeroepen, en moet hij een foto en een tekst laden.Alleen weet ik niet hoe ik moet aangeven welke foto hij moet laden? Moet ik ergens alle titels van de foto's zetten, zodat flash weet waar het om gaat? Nu had ik het geprobeerd met
foto=("pictures/jonas.jpg");
En dat hij dan het woord foto vervangt door de plaats van de echte foto.
Maar dat werkte natuurlijk niet? En met de tekst moet hetzelfde gebeuren..
en zo heb ik het ook geprobeerd:
filename = ["naam.jpg", "naam.jpg", "naam.jpg"];
En dan hetzelfde voor de tekst...
En dit kan ik niet oplossen met die tutorial, wat daar zijn het gewoon een hoop foto's en 2 buttons.
Groeten
Jonas
damarez
%Europe/Berlin %820 %2005, 20:41
probeer de thumbnail gallery van kirupa
Fatty Owl
%Europe/Berlin %822 %2005, 20:44
dit op de frame waar je inlaad
function praesidium(){
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie("foto","imageHolder");
imageHolder._x = 375;
imageHolder._y = 18;
};
en dan op de naambuttons :
foto = ("pictures/denaamvandejuistefoto.jpg")
chonazz
%Europe/Berlin %825 %2005, 20:48
Maar hoe roep ik dan die functie aan, en vertel ik er bij dat hij die foto en dat testje moet laden?
Want enkel foto =("......."); is niet genoeg zeker?
Dit heb ik er nu opstaan, maar dat doet niet veel :-)
on (release) {
foto = ("images/jonas.jpg");
preasidium();
}
Groeten
theFlashWizard
%Europe/Berlin %924 %2005, 23:10
Fatty Owl, je kan beter geen loadVariables meer aanraden.. loadVars is nieuwer en dus beter..
en je gebruikt of:
my_mc.loadMovie(url:String [,variables:String]) : Void
of:
loadMovie(url:String,target:Object [, method:String]) : Void
loadMovie(url:String,target:String [, method:String]) : Void
oftewel:
loadMovie(foto,imageHolder);
of:
imageHolder.loadMovie(foto);
Kprobeer je niet af te kraken btw Kprobeer je alleen aan te vullen..
chonazz, gezien foto geen string is maar een variabele met het path naar de foto moet hij niet tussen haakjes..
anders moet je deze n x lezen:
http://www.actionscript.org/tutorials/beginner/variables/index.shtml
:)
dus:
function praesidium(){
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie(foto);
imageHolder._x = 375;
imageHolder._y = 18;
};
:)
chonazz
%Europe/Berlin %051 %2005, 02:14
Hey wizard, bedankt voor de uitleg, maar nu ben ik er nog steeds niet uit? Wat moet ik op de button plaatsen om de juiste foto te laden?
Groeten
jonas
theFlashWizard
%Europe/Berlin %236 %2005, 06:39
on (release) {
foto = "images/jonas.jpg";
preasidium();
}
en eigenlijk ist nog netter als je et zo doet:
on (release) {
foto = "images/jonas.jpg";
preasidium(foto);
}
function praesidium(foto){
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie(foto);
imageHolder._x = 375;
imageHolder._y = 18;
};
chonazz
%Europe/Berlin %434 %2005, 11:25
owkey, hartelijk dank! Op een spelfout na was ie perfect!
thnx wizard,
theFlashWizard
%Europe/Berlin %515 %2005, 13:21
geen dank, graag gedaan :)
chonazz
%Europe/Berlin %673 %2005, 17:10
Owkey, ik ben er bijna uit, dankzij jullie hulp.
Maar nu is er nog 1 klein probleem dat ik niet opgelost krijg.
De functie staat op frame 1 van de hoofdfilm, maar de button waar de functie wordt aangeroepen staat in een mc?
De functie wordt wel aangeroepen, want de foto wordt geladen, maar de tekst bv niet?
op de button heb ik:
on (release) {
gotoAndStop(3);
foto = "images/berten.jpg";
tekst = "text/berten.txt";
_root.praesidium(foto, tekst);
}
Weet ie zo waar hij de text en de foto moet halen? Weet hij dat hij in de functie het woordt tekst moet vervangen door "text/berten.txt";?
Want dat doet ie niet :-)
Groeten
jonas
meagain
%Europe/Berlin %772 %2005, 19:32
Hier (http://www.sephiroth.it/file_detail.php?id=139) kan je een heel geavanceerde flash-app downloaden. Misschien dat je hier wat van kan leren ....
theFlashWizard
%Europe/Berlin %824 %2005, 20:47
en hoe had je de functie omgebouwd dan?
zoiets toevallig:
function praesidium(foto,tekst){
loadVariables("tekst",this);
_root.createEmptyMovieClip("imageHolder", 0);
imageHolder.loadMovie(foto);
imageHolder._x = 375;
imageHolder._y = 18;
};
?
want zoals tekst weer tussen haakjes staat gaat het niet werken.. variabele moeten nooit tussen haken.. want dan worden ze begrepen als strings.. zoals ik al eerder vertelde..
chonazz
%Europe/Berlin %984 %2005, 00:38
Jeps zo, maar ik ben er ondertussen al uit...
Foto's worden mooi geladen.. Alleen nog een probleem met de plaats...
theFlashWizard
%Europe/Berlin %267 %2005, 07:24
plaatjes worden altijd rechts onder het middelpunt van de mc waarin je hem laad gezet.. kan je daar wat mee?
en anders kun je je plaatje mischien beter laden met de MovieClipLoader:
http://www.kirupa.com/developer/actionscript/moviecliploader2.htm
http://www.actionscripts.org/tutorials/intermediate/MovieClipLoader_in_Flash_MX_2004/index.shtml
http://www.actionscripts.org/tutorials/intermediate/MovieClipLoader_in_Flash_MX_2004_Part2/index.shtml
dan kun je de plek en zelfs grootte opgeven bij de onload
chonazz
%Europe/Berlin %465 %2005, 12:10
Ja, dat ze vanuit de linker bovenhoek geladen worden wist ik al :-)
Maar is er geen manier om er voor te zorgen dat de rechterbovenhoek altijd op dezelfde plaats is?
Want rechts en boven moet de foto altijd even ver van een paar lijnen komen:
http://users.skynet.be/bk291935/Afbeelding5.png
http://users.skynet.be/bk291935/Afbeelding4.png
Zo dus :-)
Ik had deze code:
foto._x = Stage.width - foto._width;
Maar daar snap ik het nut niet zo van, en moest het wel jusit zijn, het werkt niet.
HIer kan je een de site en het probleem bekijken:
site (http://chonazz.no-ip.org)
Dan op nummer 3 (praesidium klikken) en dan moet je maar eens op een paar verschillende namen klikken. Dan zie je dat de foto's niet juist staan.. En dat is juist wat ik wil bereiken.
Groeten
Jonas
theFlashWizard
%Europe/Berlin %783 %2005, 19:48
echt n kwestie van positioneren wanneer het plaatje geladen is.. en kan je nakijken met de onLoad functie van de moviecliploader class.. zoals ik net allemaal dus al zei dus..
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.