First time here? First time here? Newsletter Signup Newsletter
651326 Members and growing! | Flash Jobs
Search tutorials
Author: Patrick Jansen | Website: http://orbita.starmedia.com/~pjv

Adding the drag-scrolbar and nessary trigger. (cont)

Step 8 :

Create a new Movie Clip (the container for scroll drag mc) and name it scrollbar. On the first frame, place an instance of Movie Clip scroll drag mc at position x=0 and y=0. Give it the instance name slider. Duplicate frame 1 to frame 2 and frame 3. At frame 1 insert the action:

stop (); 

At frame 2 insert the following actions:

scrollvalue = getProperty ( slider, _y) / _parent.balkheight;
max = _parent.windowtext.maxscroll;
_parent.windowtext.scroll = int(scrollvalue*(max-1))+1;

and at frame 3 the action:

gotoAndPlay (2);

Stopping imediately at frame 1. The actions from the loop between frame 2 and frame 3 will be triggered the moment the dragbutton is pressed and held. These will continuously keep readjusting the scroll positon of the text. However, see the first action of frame 2 (getProperty ( slider, _y) / _parent.balkheight), it will be based on the Property Y-position of the instance slider (Movie Clip scroll drag mc). Now, this is why the whole system works: the actions on the drag button in scroll drag button (when dragged and held) tell Movie Clip scrollbar to loop between frame 2 and 3 when the drag button is held (which keeps setting the scroll value according to position of the slider) and stop at frame 1 once the mouse is released.

But wait, what did this script do? First, it sets a variable called scrollvalue which devides the current position of slider by the maximum position of slider (which is used for the drag-defenitions 0,0,0,../balkheight). This will look at the 'percentage' of the drag button's position, relative to the maximum dragable distance. It will result in a value between 0 and 1. After this, the textposition (scrolltext.scroll) will be reset acordingly. This is done by first getting the maximum scrollvalue scrolltext.maxscroll into a variable called max. Then the current scroll value scrolltext.scroll is recalculated. One might think that the easiest way would be: scrollvalue * max. However, the scrolldistance goes from 0 pixels to 80 pixels while the scrollvalue (line numbers) go from 1 to maximum instead of 0 to maximum. By changing max to (max - 1) + 1 we correct the calculation. By the way, the "int" is to create whole numbers like 1 and 13 and 45 instead of 1,2330 and 13,29003 and 44,99945.

Step 9 :

Create a new layer above layer click buttons in Movie Clip textMC and name it drag scroll button. Create an empty keyframe and place here an instance of scrollbar. Give it the instance name scroll. Click Control - Test Movie to test if the dragable scroll button is working. Notice that when clicking and holding the scroll up or down button the slider does not move yet, i mentioned this earlier. We'll do that in the next and last step of the scrolling part.

» Level Intermediate

Added: 2001-01-25
Rating: 8 Votes: 123
(10 being the highest)
» Author
Patrick Jansen is a freelance flash-, graphic- and webdesigner. Born in Holland, currently residential in Brazil. Worked for the compagnies Lectric b.v. (www.lectric.nl) and NIC b.v. (www.notenbomer.nl).
» Download
Download the files used in this tutorial.
» Forums
More help? Search our boards for quick answers!

Comments

  • There are no comments yet. Be the first to comment!

  • You must have javascript enabled in order to post comments.

Leave a Comment
  • Your email address will not be published. All fields are required.
Featured Flash FLA
» Author: work2survive
» Title: Girl Walking 1kb
» Description: Walking girl, animation just takes 1kb, using high heels shoes, and fashion model attitude.
Featured Sound Loops
Image for equalize

Audio Player

» Author: BoxCat
» Title: CPU Talk
» Description: From the cyberpunk RPG, "Nameless: the Hackers" Completely Free to use! Keywords: edm hip hop rap electronic mysterious mission hacking chase exciting spy ios ambient chilling love happy sad angry suspense
Latest Font
» Author: Fábio FAFERS
» Description: I created this font for free use. Everyone can apply it in personal or business texts. Its free, but I want to be communicated in case of business use. Donations are accepted to keep the project of free fonts alive! Thank you all
Featured Sound Fx
Image for equalize

Audio Player

» Author: nathan
» Description:

A recorded sound of the Dimensional Fork Gate.