# \[flashMX\] photo gallery actionscript

**URL:** <https://forum.kirupa.com/t/flashmx-photo-gallery-actionscript/46056>\
**Category:** flash\
**Created:** [March 20, 2004, 6:54pm UTC](https://forum.kirupa.com/t/flashmx-photo-gallery-actionscript/46056 "2004-03-20T18:54:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![hondo311](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@hondo311](https://forum.kirupa.com/u/hondo311)\
**Post date:** [March 20, 2004, 6:54pm UTC](https://forum.kirupa.com/t/flashmx-photo-gallery-actionscript/46056/1 "2004-03-20T18:54:00Z")

</div>

i want to use the crank handle to scroll images instead of the arrows (see crank script at bottom).

i started w/ a photo gallery from kirupa [http://www.kirupa.com/developer/mx/photogallery.htm](http://www.kirupa.com/developer/mx/photogallery.htm) (go here to download images)

//here is the galleryscript://

## /// variables ------------------------------------------ // put the path to your pics here, include the slashes (ie. “pics/”) // leave it blank if they’re in the same directory this.pathToPics = “animation/”; // fill this array with your pics this.pArray = [“image1.jpg”, “image2.jpg”, “image3.jpg”]; this.fadeSpeed = 20; 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);

the arrows have this script:  
//right arrow//  
on (release) {  
\_root.changePhoto(1);   
}

//left arrow?  
on (release) {  
\_root.changePhoto(-1);   
}

* * *

//the crank//

mc.btn.onPress = function(){  
scrolling = true;  
}  
mc.btn.onmouseUp = function(){  
scrolling = false;  
}  
onEnterFrame = function(){  
if(scrolling){  
var dx=mc.\_x-\_xmouse;  
var dy=mc.\_y-\_ymouse;  
var rad = Math.atan2(-dy,-dx);  
var angle = (rad\*180)/Math.PI;  
mc.\_rotation=angle;  
}   
}

flash file is attached if it helps.  
thanks!
