Hi, couple of problems im having at the moment - im a bit of a beginner and trying to make my own photo viewer. I’ve made it so the thumbnails are made dynamically from the original photo files.
First problem im having is that im loading thumbnails into a movie clip i created and want to mask this new movie clip so that it only shows two photos wide and they dont then stretch across the viewer. i have a movie clip on the main scene called ‘thumbnailbox_mc’ and want to use this as the mask, its set to the size i want.
The second problem is that i cant seem to make the thumbnail movie clips to have button like behaviour, so when clicked on by a mouse it changes the photo in the main movie clip ‘photoholderLoader’.
Here is my actionscrpit to load the thumbnails (using an xml file with the photo details in).
function showThumbnails(Category:String):Void {
border.removeMovieClip()
var PhotoHolder:MovieClip;
var xPos:Number;
var yPos:Number;
var PhotoURL:String;
MovieDepthCounter ++;
var rowCounter:Number = 0;
resetPhotos();
for (var i:Number =0; i < RootNode.childNodes.length; i++) {
if (RootNode.childNodes*.attributes.name == Category) {
var CategoryXML:XMLNode = RootNode.childNodes*;
TotalPhotos = CategoryXML.childNodes.length;
for (var j:Number = 0; j < CategoryXML.childNodes.length; j++) {
PhotoURL = CategoryXML.childNodes[j].attributes.jpegURL;
PhotoHolder = this.createEmptyMovieClip("photoHolder" + j, MovieDepthCounter);
PhotoHolder.onRelease = function() {
trace("Thumbnail button works!!!");
}
Photoholder.setMask(_root.thumbnailbox_mc);
yPos = (135 + 45 * j) - (180 * rowCounter);
xPos = 30 + 62 * rowCounter;
trace (xPos);
trace (yPos);
PhotoHolder._x = xPos;
PhotoHolder._y = yPos;
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip):Void {
Resize(target_mc, 40, 40);
};
var photoHolderLoader:MovieClipLoader = new MovieClipLoader();
photoHolderLoader.addListener(mclListener);
photoHolderLoader.loadClip("photos/" + PhotoURL,PhotoHolder);
var k;
listen = new Object();
listen.onPress = function () {
trace ("working");
};
//PhotoHolder photoHolderLoader.loadClip("photos/" + PhotoURL, empty_mc);
PhotoHolder.onPress = function() {
trace ("working");
};
border=_root.createEmptyMovieClip("square"+j+1, 50 + j+1);
_root["square"+j+1].lineStyle(2, 0xffffff, 100);
_root["square"+j+1].beginFill(0x99CCCC, 0);
_root["square"+j+1].moveTo(PhotoHolder._x - borderspace +1, PhotoHolder._y - borderspace +1 );
_root["square"+j+1].lineTo(PhotoHolder._x - borderspace +1 , PhotoHolder._y + 39 + borderspace);
_root["square"+j+1].lineTo(PhotoHolder._x + 52 +borderspace, PhotoHolder._y + 39 + borderspace);
_root["square"+j+1].lineTo(PhotoHolder._x + 52 +borderspace, PhotoHolder._y - borderspace +1);
_root["square"+j+1].endFill();
MovieDepthCounter ++;
if (yPos >= 250) {
rowCounter ++;
}
}
}
}
}
cheers for the help, stib.