Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Issue with Flash photo gallery

Status
Not open for further replies.

saxonomy

Technical User
Dec 15, 2003
47
US
This code is not working for me. I drew a box, converted it into a movie and want the pictures to load inside the rectangular box I created. The rectangular movie has an Instance name of "Photo". And it's also called "Photo" in my library. I put in the following code and the 1st picture appears but isn't loaded inside the movie I made....it covers the entire page. I got this code a long time ago.


Please help!!

_______________________________________________

this.pathToPics = "pics/";
this.pArray = ["1.jpg", "2.jpg", "3.jpg",
"4.jpg","5.jpg","6.jpg","7.jpg","8.jpg",
"9.jpg","10.jpg","11.jpg","12.jpg","13.jpg",
"14.jpg","15.jpg","16.jpg","17.jpg","18.jpg",
"19.jpg","20.jpg","21.jpg","22.jpg","23.jpg",
"24.jpg","25.jpg","26.jpg"];
this.fadeSpeed = 80;
this.pIndex = 0;

// MovieClip methods ----------------------------------
// d=direction; should 1 or -1 but can be any number
//loads an image automatically when you run animation

loadMovie(this.pathToPics+this.pArray[0], _root.Photo);
MovieClip.prototype.changePhoto = function(d) {
// make sure pIndex falls within pArray.length
this.pIndex = (this.pIndex+d)%this.pArray.length;
if (this.pIndex<0) {
this.pIndex += this.pArray.length;
}
this.onEnterFrame = fadeOut;
};
MovieClip.prototype.fadeOut = function() {
if (this.Photo._alpha>this.fadeSpeed) {
this.Photo._alpha -= this.fadeSpeed;
} else {
this.loadPhoto();
}
};
MovieClip.prototype.loadPhoto = function() {

// specify the movieclip to load images into
var p = _root.Photo;
//------------------------------------------
p._alpha = 0;
p.loadMovie(this.pathToPics+this.pArray[this.pIndex]);
this.onEnterFrame = loadMeter;
};
MovieClip.prototype.loadMeter = function() {
var i, l, t;
l = this.Photo.getBytesLoaded();
t = this.Photo.getBytesTotal();
if (t>0 && t == l) {
this.onEnterFrame = fadeIn;
} else {
trace(l/t);
}
};
MovieClip.prototype.fadeIn = function() {
if (this.Photo._alpha<100-this.fadeSpeed) {
this.Photo._alpha += this.fadeSpeed;
} else {
this.Photo._alpha = 100;
this.onEnterFrame = null;
}
};
// Actions -----------------------------------------
// these aren't necessary, just an example implementation
this.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
this.changePhoto(-1);
} else if (Key.getCode() == Key.RIGHT) {
this.changePhoto(1);
}
};
Key.addListener(this);
 
then the photos are larger than the box. you could scale them after they have loaded or if you are using mx2004 or above use a loader component which will automatically scale the photos to fit
 
which is easier to do? I have Flash MX.
Is it easier to scale after loading or to use the loader component (which I don't know where to find it)?
 
with flash mx only ( not 2004 ) you dont have a loader component

all you can do is scale the photo after it has fully loaded

let me know if you need code

 
yes please. can I please have the code for the scaling. I dont have 2004.

Also, to make sure that the pics load into the rectangluar box I drew (and converted into a movie), and not the entire page, do I:

1. In the main scene, create the movie box in one layer, and write the code in another blank layer on that main scene. (which is how I have it now)

2. Or make the movie box in the main scene, then edit(enter) the movie box, and write the original coding (with the scaling code you will give me) in a layer in the movie scene of the box (not the main scene).

Lastly, in whatever layer I write the code into, does it have to be an active keyframe (i.e. filled dot) for the code to be activated? Because, right now, the code is in a blank layer in the main scene with nothing but a blank keyframe (empty dot) in the said layer.

Sry, I'm such a noob!
 
can you just post a link to the fla

be quicker if i fix it then you look at code


 
Ok, would do that later tonight.
Preciate it lots!!!
 
I emailed three pics to you. They were the only ones I could get a hold of with the same width/height ratio.

Thanks
 
In fact that was going to be my second question... Are you sure the maybe changing pictures will all be of the same initial dimentions & ratio, or will there possibly be portrait and landscape types of pictures, which you'll all want to fit in your screen, whatever their type?

Regards. FLASH HELP - OPENED FOR BUSINESS!
TO GET YOUR OWN FREE WEBSITE HOSTING
 
They are all one of three different sizes. However, all the pics have the same heigh to width ratio.

any luck?
 
Well, I got a scaling script from somebody, that'll scale down the pictures to fit in your Photo mc, whatever their initial dimensions and respecting their ratio...

I have worked on the movie (there's a lot to change...), but too busy right now to integrate the scaling script...
Maybe later today... Or even tomorrow...

Regards. FLASH HELP - OPENED FOR BUSINESS!
TO GET YOUR OWN FREE WEBSITE HOSTING
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top