Scroll bar maths?!

I have the code below that i am looking to try to amend to use my custom scroller, any one able to help me figure out what code i need to know to make it work for me properly? using it in its current state it does move the bar up and down, and display all the relevant info, its just the bar doesnt visually appear at the bottom or top of the window (only the middle). I figure it will be something to do with the variables not matching my dimensions, but i cant suss it.
Can anyone tell me what i need to know and what variables i need to change to get this thing to work?
function updateScroller(type) {
var a = target.scroll;
var b = target.maxscroll;
var c = 110;
var d = scroller._y;
if (type == "mid") {
target.scroll = Math.round((b*(d/c))+1);
} else {
scroller._y = c*((a-1)/b);
Any help appreciated.

Do you know by any chance if I can revert to Mail 4.5 from Lion's version ?

Similar Messages

  • JTextArea w/Scroll bar wont scroll AND code drops through if statements

    Hi, I'm still having trouble with the text area in the following code. When you run the code, you get the top arrow on the scroll bar, but the bottom is cut off. Also, a big problem is that no matter what choice is selected from the combo box, the code drops through to the last available value each time. Someone on the forums suggested using an array list for the values in the combo box, but I have not been able to figure out how to do that. A quick example would be apprciated.
    Thank you in advance for any help
    //Import required libraries
    import java.awt.event.*;
    import javax.swing.*;
    import java.awt.*;
    import java.io.*;
    import java.text.*;
    import java.math.*;
    import java.util.*;
    //Create the class
    public class Week3Assignment407B extends JFrame implements ActionListener
         //Panels used in container
         private JPanel jPanelRateAndTermSelection;         
         //Variables for Menu items
         private JMenuBar menuBar;    
         private JMenuItem exitMenuItem; 
         private JMenu fileMenu; 
         //Variables for user instruction and Entry       
         private JLabel jLabelPrincipal;   
         private JPanel jPanelEnterPrincipal;  
         private JLabel jLabelChooseRateAndTerm; 
         private JTextField jTextFieldMortgageAmt;
         //Variables for combo box and buttons
         private JComboBox TermAndRate;
         private JButton buttonCompute;
         private JButton buttonNew; 
         private JButton buttonClose;
         //Variables display output
         private JPanel jPanelPaymentOutput;
         private JLabel jLabelPaymentOutput;
         private JPanel jPanelErrorOutput;
         private JLabel jLabelErrorOutput;  
         private JPanel jPanelAmoritizationSchedule;
         private JTextArea jTextAreaAmoritization;
         // Constructor 
         public Week3Assignment407B() {            
              super("Mortgage Application");      
               initComponents();      
         // create a method that will initialize the main frame for the GUI
          private void initComponents()
              setSize(700,400);
              setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);      
              Container pane = getContentPane();
              GridLayout grid = new GridLayout(15, 1);
              pane.setLayout(grid);       
              //declare all of the panels that will go inside the main frame
              // Set up the menu Bar
              menuBar = new JMenuBar();
              fileMenu = new JMenu();
              fileMenu.setText("File");        
              exitMenuItem = new JMenuItem(); 
               exitMenuItem.setText("Exit");
              fileMenu.add(exitMenuItem); 
              menuBar.add(fileMenu);       
              pane.add(menuBar);
              //*******************TOP PANEL ENTER PRINCIPAL*****************************//
              // Create a label that will advise user to enter a principle amount
              jPanelEnterPrincipal = new JPanel(); 
              jLabelPrincipal = new JLabel("Amt to borrow in whole numbers");
              jTextFieldMortgageAmt = new JTextField(10);
              GridLayout Principal = new GridLayout(1,2);
              jPanelEnterPrincipal.setLayout(Principal); 
                jPanelEnterPrincipal.add(jLabelPrincipal);
              jPanelEnterPrincipal.add(jTextFieldMortgageAmt);
              pane.add(jPanelEnterPrincipal);
              //****************MIDDLE PANEL CHOOSE INTEREST RATE AND TERM*****************//
              // Create a label that will advise user to choose an Int rate and term combination
              // from the combo box
              jPanelRateAndTermSelection = new JPanel();
              jLabelChooseRateAndTerm = new JLabel("Choose the Rate and Term");
              buttonCompute = new JButton("Compute Mortgage");
              buttonNew = new JButton("New Mortgage");
              buttonClose = new JButton("Close");
              GridLayout RateAndTerm = new GridLayout(1,5);
              //FlowLayout RateAndTerm = new FlowLayout(FlowLayout.LEFT);
              jPanelRateAndTermSelection.setLayout(RateAndTerm);
              jPanelRateAndTermSelection.add(jLabelChooseRateAndTerm);
              TermAndRate = new JComboBox();
              jPanelRateAndTermSelection.add(TermAndRate);
              TermAndRate.addItem("7 years at 5.35%");
              TermAndRate.addItem("15 years at 5.5%");
              TermAndRate.addItem("30 years at 5.75%");
              jPanelRateAndTermSelection.add(buttonCompute);
              jPanelRateAndTermSelection.add(buttonNew);
              jPanelRateAndTermSelection.add(buttonClose);
              pane.add(jPanelRateAndTermSelection);
              //**************BOTTOM PANEL TEXT AREA FOR AMORITIZATION SCHEDULE***************//
              jPanelAmoritizationSchedule = new JPanel();
              jTextAreaAmoritization = new JTextArea(26,50);
              // add scroll pane to output text area
                   JScrollPane scrollBar = new JScrollPane(jTextAreaAmoritization, 
                   JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
                     JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
              jPanelAmoritizationSchedule.add(scrollBar);
                pane.add(jPanelAmoritizationSchedule);
              //***************ADD THE ACTION LISTENERS TO THE GUI COMPONENTS*****************//
              // Add ActionListener to the buttons and menu item
              exitMenuItem.addActionListener(this);
              buttonCompute.addActionListener(this);         
              buttonNew.addActionListener(this);
              buttonClose.addActionListener(this);
              TermAndRate.addActionListener(this);
              jTextFieldMortgageAmt.addActionListener(this);
              //*************** Set up the Error output area*****************//
              jPanelErrorOutput = new JPanel();
              jLabelErrorOutput = new JLabel();
              FlowLayout error = new FlowLayout();
              jPanelErrorOutput.setLayout(error);
              pane.add(jLabelErrorOutput);
              setContentPane(pane);
              pack();
              setVisible(true);
         //Display error messages
         private void OutputError(String ErrorMsg){
              jLabelErrorOutput.setText(ErrorMsg);
              jPanelErrorOutput.setVisible(true);
         //create a method that will clear all fields when the New Mortgage button is chosen
         private void clearFields()
              jTextAreaAmoritization.setText("");
              jTextFieldMortgageAmt.setText("");
         //**************CREATE THE CLASS THAT ACTUALLY DOES SOMETHING WITH THE EVENT*****//
         //This is the section that receives the action source and directs what to do with it
         public void actionPerformed(ActionEvent e)
              Object source = e.getSource();
              String ErrorMsg;
              double principal;
              double IntRate;
              int Term;
              double monthlypymt;
              double TermInYears = 0 ;
              if(source == buttonClose)
                   System.exit(0);
              if (source == exitMenuItem) {      
                       System.exit(0);
              if (source == buttonNew)
                   clearFields();
              if (source == buttonCompute)
                   //Make sure the user entered valid numbers
                   try
                        principal = Double.parseDouble(jTextFieldMortgageAmt.getText());
                   catch(NumberFormatException nfe)
                        ErrorMsg = (" You Entered an invalid Mortgage amount"
                                  + " Please try again. Please do not use commas or decimals");
                        jTextAreaAmoritization.setText(ErrorMsg);
                   principal = Double.parseDouble(jTextFieldMortgageAmt.getText());
                    if (TermAndRate.getSelectedItem() == "7 years at 5.35%") ;
                        Term = 7;
                        IntRate = 5.35;
                    if (TermAndRate.getSelectedItem()  == "15 years at 5.5%") ;
                        Term = 15;
                        IntRate = 5.5;
                    if (TermAndRate.getSelectedItem() == "30 years at 5.75%") ;
                        Term = 30;
                        IntRate = 5.75;
                   //Variables have been checked for valid input, now calculate the monthly payment
                   NumberFormat formatter = new DecimalFormat ("$###,###.00");
                   double intdecimal = intdecimal = IntRate/(12 * 100);
                   int months = Term * 12;
                   double monthlypayment = principal *(intdecimal / (1- Math.pow((1 + intdecimal),-months)));
                   //Display the Amoritization schedule
                   jTextAreaAmoritization.setText(" Loan amount of " + formatter.format(principal)
                                                    + "\n"
                                                    + " Interest Rate is " +  IntRate + "%"
                                            + "\n"
                                            + " Term in Years "  + Term
                                            + " Monthly payment "+  formatter.format(monthlypayment)
                                            + "\n"
                                            + "  Amoritization is as follows:  "
                                            + "------------------------------------------------------------------------");
         public Insets getInsets()
              Insets around = new Insets(35,20,20,35);
              return around;
         //Main program     
         public static void main(String[]args) { 
              Week3Assignment407B frame = new Week3Assignment407B(); 
       }

    here's your initComponents with a couple of changes, the problem was the Gridlayout(15,1)
    also, the scrollpane needed a setPreferredSize()
      private void initComponents()
        setSize(700,400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //Container pane = getContentPane();
        JPanel pane = new JPanel();
        //GridLayout grid = new GridLayout(15, 1);
        GridLayout grid = new GridLayout(2, 1);
        pane.setLayout(grid);
        menuBar = new JMenuBar();
        fileMenu = new JMenu();
        fileMenu.setText("File");
        exitMenuItem = new JMenuItem();
        exitMenuItem.setText("Exit");
        fileMenu.add(exitMenuItem);
        menuBar.add(fileMenu);
        //pane.add(menuBar);
        setJMenuBar(menuBar);
        jPanelEnterPrincipal = new JPanel();
        jLabelPrincipal = new JLabel("Amt to borrow in whole numbers");
        jTextFieldMortgageAmt = new JTextField(10);
        GridLayout Principal = new GridLayout(1,2);
        jPanelEnterPrincipal.setLayout(Principal);
          jPanelEnterPrincipal.add(jLabelPrincipal);
        jPanelEnterPrincipal.add(jTextFieldMortgageAmt);
        pane.add(jPanelEnterPrincipal);
        jPanelRateAndTermSelection = new JPanel();
        jLabelChooseRateAndTerm = new JLabel("Choose the Rate and Term");
        buttonCompute = new JButton("Compute Mortgage");
        buttonNew = new JButton("New Mortgage");
        buttonClose = new JButton("Close");
        GridLayout RateAndTerm = new GridLayout(1,5);
        jPanelRateAndTermSelection.setLayout(RateAndTerm);
        jPanelRateAndTermSelection.add(jLabelChooseRateAndTerm);
        TermAndRate = new JComboBox();
        jPanelRateAndTermSelection.add(TermAndRate);
        TermAndRate.addItem("7 years at 5.35%");
        TermAndRate.addItem("15 years at 5.5%");
        TermAndRate.addItem("30 years at 5.75%");
        jPanelRateAndTermSelection.add(buttonCompute);
        jPanelRateAndTermSelection.add(buttonNew);
        jPanelRateAndTermSelection.add(buttonClose);
        pane.add(jPanelRateAndTermSelection);
        jPanelAmoritizationSchedule = new JPanel();
        jTextAreaAmoritization = new JTextArea(26,50);
        JScrollPane scrollBar = new JScrollPane(jTextAreaAmoritization,
          JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
        scrollBar.setPreferredSize(new Dimension(500,100));//<------------------------
        jPanelAmoritizationSchedule.add(scrollBar);
        getContentPane().add(pane,BorderLayout.NORTH);
        getContentPane().add(jPanelAmoritizationSchedule,BorderLayout.CENTER);
        exitMenuItem.addActionListener(this);
        buttonCompute.addActionListener(this);
        buttonNew.addActionListener(this);
        buttonClose.addActionListener(this);
        TermAndRate.addActionListener(this);
        jTextFieldMortgageAmt.addActionListener(this);
        jPanelErrorOutput = new JPanel();
        jLabelErrorOutput = new JLabel();
        FlowLayout error = new FlowLayout();
        jPanelErrorOutput.setLayout(error);
        //pane.add(jLabelErrorOutput);not worrying about this one
        //setContentPane(pane);
        pack();
        setVisible(true);
      }instead of
    if (TermAndRate.getSelectedItem() == "7 years at 5.35%") ;
    Term = 7;
    IntRate = 5.35;
    you would be better off setting up arrays
    int[] term = {7,15,30};
    double[] rate = {5.35,5.50,5.75};
    then using getSelectedIndex()
    int loan = TermAndRate.getSelectedIndex()
    Term = term[loan];
    IntRate = rate[loan];

  • Image Gallery & Scroll Bar

    Just exploring flash as a beginner, still.
    I've come across this website:
    http://www.jeremiahshoaf.com/
    I'm a fan of the scrolling portfolio idea the designer has used in the centre of the website's front page.
    Any ideas how this is produced?
    My presumption would be a MovieClip with images various other MovieClips inside (holding images etc) and then a scrollbar controlling how far across the screen the images are shown with actionscript?
    Knowing me I'm wrong, but any ideas would help me out to explore and learn further.
    Thanks for your great advice, as always.
    .. Also, I wondered if this could be produced, and as well as the scrollbar, the ability to add scrolling with the keyboard, left and right keys? Again, only a presumption, but I was thinking this might be simple with actionscript? Simply a piece of code to tell the scrollbar to move to the next MovieClip, if my initial presumption was correct.
    The above is only a small side note for those who feel they can assist - but thanks again for any help you can provide!
    This forum has been a huge help to me, in learning Flash so far.
    Thanks a lot.

    Well first you need a really long MovieClip with some graphics inside on it. That should be simple enough to do. Then you need a scrollbar. Just a rectangle should do for now. On this MovieClip give it a MOUSE_DOWN event listener and on that event use the "startDrag" function to add dragging functionality. Add a MOUSE_UP event listener to the stage and when that happens call "stopDrag" on the scroll bar clip. Then you can have an ENTER_FRAME event that actually updates the scrolling. On this event, check the scrollbar's x position and do some math to figure out the percentage you have scrolled. It might look like this:
    var percent:Number = scrollbar.x / (stage.width - scrollbar.width);
    Then update the main image container by the percent:
    var minPosition:Number = -500;
    bigImage.x = percent * minPosition;
    Hopefully that should be enough info to get you started.

  • Scroll Bar Controlling multiple movieclips?

    Instead of a scroll bar just controlling one movieclip..How could we get it to control multiple movieclips?
    public class MainScroll extends Sprite
              //private var mc_content:Sprite;
              private var content_mc:MovieClip;
              private var content2_mc:MovieClip;
              private var _scrollBar:FullScreenScrollBar;
              //============================================================================================================================
              public function MainScroll()
              //============================================================================================================================
                   addEventListener(Event.ADDED_TO_STAGE, onAddedToStage, false, 0, true);
              //============================================================================================================================
              private function init():void
              //============================================================================================================================
                   SWFWheel.initialize(stage);
                   //_copy = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque quam leo semper non sollicitudin in eleifend sit amet diam. "; 
                   content_mc = new mc_content();
                   content2_mc = new mc_content2();
                   content_mc.x = 110;
                   content_mc.y = 29;
                   content2_mc.x = 10
                   content2_mc.y = 29
                   addChild(content_mc);
                   addChild(content2_mc);
                   // Scrollbar code 
                   // Arguments: Content to scroll, track color, grabber color, grabber press color, grip color, track thickness, grabber thickness, ease amount, whether grabber is "shiny"
                   _scrollBar = new FullScreenScrollBar(content_mc, 0x000000, 0x408740, 0x73C35B, 0xffffff, 15, 15, 4, true);
                   addChild(_scrollBar);
              //============================================================================================================================
              private function onAddedToStage(e:Event):void
              //============================================================================================================================
                   init();
                   removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);

    Ok,
    Here is that code:
         import flash.display.*
         import flash.events.*;
         import flash.geom.Rectangle;
         import gs.OverwriteManager;
         import gs.TweenFilterLite;
         public class FullScreenScrollBar extends Sprite
              private var _content:DisplayObjectContainer;
              private var _trackColor:uint;
              private var _grabberColor:uint;
              private var _grabberPressColor:uint;
              private var _gripColor:uint;
              private var _trackThickness:int;
              private var _grabberThickness:int;
              private var _easeAmount:int;
              private var _hasShine:Boolean;
              private var _track:Sprite;
              private var _grabber:Sprite;
              private var _grabberGrip:Sprite;
              private var _grabberArrow1:Sprite;
              private var _grabberArrow2:Sprite;
              private var _tH:Number; // Track height
              private var _cH:Number; // Content height
              private var _scrollValue:Number;
              private var _defaultPosition:Number;
              private var _stageW:Number;
              private var _stageH:Number;
              private var _pressed:Boolean = false;
              //============================================================================================================================
              public function FullScreenScrollBar(c:DisplayObjectContainer, tc:uint, gc:uint, gpc:uint, grip:uint, tt:int, gt:int, ea:int, hs:Boolean)
              //============================================================================================================================
                   _content = c;
                   _trackColor = tc;
                   _grabberColor = gc;
                   _grabberPressColor = gpc;
                   _gripColor = grip;
                   _trackThickness = tt;
                   _grabberThickness = gt;
                   _easeAmount = ea;
                   _hasShine = hs;
                   init();
                   OverwriteManager.init();
              //============================================================================================================================
              private function init():void
              //============================================================================================================================
                   createTrack();
                   createGrabber();
                   createGrips();
                   addEventListener(Event.ADDED_TO_STAGE, onAddedToStage, false, 0, true);
                   _defaultPosition = Math.round(_content.y);
                   _grabber.y = 0;
              //============================================================================================================================
              public function kill():void
              //============================================================================================================================
                   stage.removeEventListener(Event.RESIZE, onStageResize);
              //============================================================================================================================
              private function stopScroll(e:Event):void
              //============================================================================================================================
                   onUpListener();
              //============================================================================================================================
              private function scrollContent(e:Event):void
              //============================================================================================================================
                   var ty:Number;
                   var dist:Number;
                   var moveAmount:Number;
                   ty = -((_cH - _tH) * (_grabber.y / _scrollValue));
                   dist = ty - _content.y + _defaultPosition;
                   moveAmount = dist / _easeAmount;
                   _content.y += Math.round(moveAmount);
                   if (Math.abs(_content.y - ty - _defaultPosition) < 1.5)
                        _grabber.removeEventListener(Event.ENTER_FRAME, scrollContent);
                        _content.y = Math.round(ty) + _defaultPosition;
                   positionGrips();
              //============================================================================================================================
              public function adjustSize():void
              //============================================================================================================================
                   this.x = _stageW - _trackThickness;
                   _track.height = _stageH;
                   _track.y = 0;
                   _tH = _track.height;
                   _cH = _content.height + _defaultPosition;
                   // Set height of grabber relative to how much content
                   _grabber.getChildByName("bg").height = Math.ceil((_tH / _cH) * _tH);
                   // Set minimum size for grabber
                   if(_grabber.getChildByName("bg").height < 35) _grabber.getChildByName("bg").height = 35;
                   if(_hasShine) _grabber.getChildByName("shine").height = _grabber.getChildByName("bg").height;
                   // If scroller is taller than stage height, set its y position to the very bottom
                   if ((_grabber.y + _grabber.getChildByName("bg").height) > _tH) _grabber.y = _tH - _grabber.getChildByName("bg").height;
                   // If content height is less than stage height, set the scroller y position to 0, otherwise keep it the same
                   _grabber.y = (_cH < _tH) ? 0 : _grabber.y;
                   // If content height is greater than the stage height, show it, otherwise hide it
                   this.visible = (_cH + 8 > _tH);
                   // Distance left to scroll
                   _scrollValue = _tH - _grabber.getChildByName("bg").height;
                   _content.y = Math.round(-((_cH - _tH) * (_grabber.y / _scrollValue)) + _defaultPosition);
                   positionGrips();
                   if(_content.height < stage.stageHeight) { stage.removeEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelListener); } else { stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelListener); }
              //============================================================================================================================
              private function positionGrips():void
              //============================================================================================================================
                   _grabberGrip.y = Math.ceil(_grabber.getChildByName("bg").y + (_grabber.getChildByName("bg").height / 2) - (_grabberGrip.height / 2));
                   _grabberArrow1.y = _grabber.getChildByName("bg").y + 8;
                   _grabberArrow2.y = _grabber.getChildByName("bg").height - 8;
              //============================================================================================================================
              // CREATORS
              //============================================================================================================================
              //============================================================================================================================
              private function createTrack():void
              //============================================================================================================================
                   _track = new Sprite();
                   var t:Sprite = new Sprite();
                   t.graphics.beginFill(_trackColor);
                   t.graphics.drawRect(0, 0, _trackThickness, _trackThickness);
                   t.graphics.endFill();
                   _track.addChild(t);
                   addChild(_track);
              //============================================================================================================================
              private function createGrabber():void
              //============================================================================================================================
                   _grabber = new Sprite();
                   var t:Sprite = new Sprite();
                   t.graphics.beginFill(_grabberColor);
                   t.graphics.drawRect(0, 0, _grabberThickness, _grabberThickness);
                   t.graphics.endFill();
                   t.name = "bg";
                   _grabber.addChild(t);
                   if(_hasShine)
                        var shine:Sprite = new Sprite();
                        var sg:Graphics = shine.graphics;
                        sg.beginFill(0xffffff, 0.15);
                        sg.drawRect(0, 0, Math.ceil(_trackThickness/2), _trackThickness);
                        sg.endFill();
                        shine.x = Math.floor(_trackThickness/2);
                        shine.name = "shine";
                        _grabber.addChild(shine);
                   addChild(_grabber);
              //============================================================================================================================
              private function createGrips():void
              //============================================================================================================================
                   _grabberGrip = createGrabberGrip();
                   _grabber.addChild(_grabberGrip);
                   _grabberArrow1 = createPixelArrow();
                   _grabber.addChild(_grabberArrow1);
                   _grabberArrow2 = createPixelArrow();
                   _grabber.addChild(_grabberArrow2);
                   _grabberArrow1.rotation = -90;
                   _grabberArrow1.x = ((_grabberThickness - 7) / 2) + 1;
                   _grabberArrow2.rotation = 90;
                   _grabberArrow2.x = ((_grabberThickness - 7) / 2) + 6;
              //============================================================================================================================
              private function createGrabberGrip():Sprite
              //============================================================================================================================
                   var w:int = 7;
                   var xp:int = (_grabberThickness - w) / 2;
                   var t:Sprite = new Sprite();
                   t.graphics.beginFill(_gripColor, 1);
                   t.graphics.drawRect(xp, 0, w, 1);
                   t.graphics.drawRect(xp, 0 + 2, w, 1);
                   t.graphics.drawRect(xp, 0 + 4, w, 1);
                   t.graphics.drawRect(xp, 0 + 6, w, 1);
                   t.graphics.drawRect(xp, 0 + 8, w, 1);
                   t.graphics.endFill();
                   return t;
              //============================================================================================================================
              private function createPixelArrow():Sprite
              //============================================================================================================================
                   var t:Sprite = new Sprite();               
                   t.graphics.beginFill(_gripColor, 1);
                   t.graphics.drawRect(0, 0, 1, 1);
                   t.graphics.drawRect(1, 1, 1, 1);
                   t.graphics.drawRect(2, 2, 1, 1);
                   t.graphics.drawRect(1, 3, 1, 1);
                   t.graphics.drawRect(0, 4, 1, 1);
                   t.graphics.endFill();
                   return t;
              //============================================================================================================================
              // LISTENERS
              //============================================================================================================================
              //============================================================================================================================
              private function mouseWheelListener(me:MouseEvent):void
              //============================================================================================================================
                   var d:Number = me.delta;
                   if (d > 0)
                        if ((_grabber.y - (d * 4)) >= 0)
                             _grabber.y -= d * 4;
                        else
                             _grabber.y = 0;
                        if (!_grabber.willTrigger(Event.ENTER_FRAME)) _grabber.addEventListener(Event.ENTER_FRAME, scrollContent);
                   else
                        if (((_grabber.y + _grabber.height) + (Math.abs(d) * 4)) <= stage.stageHeight)
                             _grabber.y += Math.abs(d) * 4;
                        else
                             _grabber.y = stage.stageHeight - _grabber.height;
                        if (!_grabber.willTrigger(Event.ENTER_FRAME)) _grabber.addEventListener(Event.ENTER_FRAME, scrollContent);
              //============================================================================================================================
              private function onDownListener(e:MouseEvent):void
              //============================================================================================================================
                   _pressed = true;
                   _grabber.startDrag(false, new Rectangle(0, 0, 0, _stageH - _grabber.getChildByName("bg").height));
                   stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMoveListener, false, 0, true);
                   TweenFilterLite.to(_grabber.getChildByName("bg"), 0.5, { tint:_grabberPressColor } );
              //============================================================================================================================
              private function onUpListener(e:MouseEvent = null):void
              //============================================================================================================================
                   if (_pressed)
                        _pressed = false;
                        _grabber.stopDrag();
                        stage.removeEventListener(MouseEvent.MOUSE_MOVE, onMouseMoveListener);
                        TweenFilterLite.to(_grabber.getChildByName("bg"), 0.5, { tint:null } );
              //============================================================================================================================
              private function onMouseMoveListener(e:MouseEvent):void
              //============================================================================================================================
                   e.updateAfterEvent();
                   if (!_grabber.willTrigger(Event.ENTER_FRAME)) _grabber.addEventListener(Event.ENTER_FRAME, scrollContent, false, 0, true);
              //============================================================================================================================
              private function onTrackClick(e:MouseEvent):void
              //============================================================================================================================
                   var p:int;
                   var s:int = 150;
                   p = Math.ceil(e.stageY);
                   if(p < _grabber.y)
                        if(_grabber.y < _grabber.height)
                             TweenFilterLite.to(_grabber, 0.5, {y:0, onComplete:reset, overwrite:1});
                        else
                             TweenFilterLite.to(_grabber, 0.5, {y:"-150", onComplete:reset});
                        if(_grabber.y < 0) _grabber.y = 0;
                   else
                        if((_grabber.y + _grabber.height) > (_stageH - _grabber.height))
                             TweenFilterLite.to(_grabber, 0.5, {y:_stageH - _grabber.height, onComplete:reset, overwrite:1});
                        else
                             TweenFilterLite.to(_grabber, 0.5, {y:"150", onComplete:reset});
                        if(_grabber.y + _grabber.getChildByName("bg").height > _track.height) _grabber.y = stage.stageHeight - _grabber.getChildByName("bg").height;
                   function reset():void
                        if(_grabber.y < 0) _grabber.y = 0;
                        if(_grabber.y + _grabber.getChildByName("bg").height > _track.height) _grabber.y = stage.stageHeight - _grabber.getChildByName("bg").height;
                   _grabber.addEventListener(Event.ENTER_FRAME, scrollContent, false, 0, true);
              //============================================================================================================================
              private function onAddedToStage(e:Event):void
              //============================================================================================================================
                   stage.addEventListener(Event.MOUSE_LEAVE, stopScroll);
                   stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheelListener);
                   stage.addEventListener(Event.RESIZE, onStageResize, false, 0, true);
                   stage.addEventListener(MouseEvent.MOUSE_UP, onUpListener, false, 0, true);
                   _grabber.addEventListener(MouseEvent.MOUSE_DOWN, onDownListener, false, 0, true);
                   _grabber.buttonMode = true;
                   _track.addEventListener(MouseEvent.CLICK, onTrackClick, false, 0, true);
                   removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
                   _stageW = stage.stageWidth;
                   _stageH = stage.stageHeight;
                   adjustSize();
              //============================================================================================================================
              private function onStageResize(e:Event):void
              //============================================================================================================================
                   _stageW = stage.stageWidth;
                   _stageH = stage.stageHeight;
                   adjustSize();

  • Scroll Bar Does not work

    Hi I've took the example from http://corlan.org/2009/02/12/how-to-add-a-scrollbar-to-text-layout-framework/ to add a scroll bar to my editor
    I use TextLayout Framework 2 and SDK Version 3.5 so I had to adapt my code to work and I got stuck on
    private function composeListener(event:CompositionCompletionEvent):void {
               var textHeight:int = Math.ceil(_controller.calculateHeight());
                 if (textHeight < _controller.compositionHeight) {
                     scroll.enabled = false;
                 } else {
                     scroll.enabled = true;
                     scroll.minScrollPosition = 0;
                     scroll.maxScrollPosition = textHeight - _controller.compositionHeight;
                 _controller.verticalScrollPosition = 0;
    TLF 2 & SDK 3.5 Forces me to use a ContainerController that doesn't have a calculateHeight method.
    How can I adapt this code to work with my current code? Is there an updated example of this?
    Also here is my set textFlow method that might be helpful.
    public function set textFlow(newFlow:TextFlow):void
                        // clear any old flow if present
                        if (_textFlow)
                             _textFlow.flowComposer = null;
                             _textFlow = null;
                        _textFlow = newFlow;
                        if (_textFlow)
                                            //textArea - Canvans
                             _controller = new ContainerController(_container,textArea.width,textArea.height);
                             _controller.verticalScrollPolicy = ScrollPolicy.ON;
                             _textFlow.flowComposer.addController(_controller);
                             // setup event listeners for selection changed and ILG loaded
                             _textFlow.addEventListener(SelectionEvent.SELECTION_CHANGE,selectionChangeListener,false,0,true);
                             _textFlow.addEventListener(StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE,graphicStatusChangeEvent,false,0,true);
                             _textFlow.addEventListener(FlowOperationEvent.FLOW_OPERATION_BEGIN,operationBeginHandler);
                             _textFlow.addEventListener(CompositionCompleteEvent.COMPOSITION_COMPLETE, composeListener);
                             _textFlow.addEventListener('scroll', scrollTextFlow);
                             // make _textFlow editable with undo
                             _textFlow.interactionManager = new EditManager(new UndoManager());
                             // initialize with a selection before the first character
                             _textFlow.interactionManager.selectRange(0,0);
                             // compose the new textFlow and give it focus
                             _textFlow.flowComposer.updateAllControllers();
                             _textFlow.interactionManager.setFocus();
    Thank you

    I've just found this:
    http://www.ungramdeimagine.ro/tlf_on_Gumbo_example/TLF_on_Gumbo.html
    The line that I was looking for was
    var textHeight : int = _controller.getContentBounds().height;
    Hope It helps someone

  • Scroll bar moves when clicked on

    Hello.  I have a custom scroll bar that was made using AS2.  It works fine except that when you click on the bar and move it, the image shifts slightly and then doesn't line up correctly.  I don't know what's causing it to shift.  All registration points are in the upper left hand corner.  I was really hoping someone could help me with this.  Here is the code:
    txt.setMask(mask)
    scrollbar.onMouseDown = function() {
        if (this.hitTest(_root._xmouse, _root._ymouse) && txt._height>mask._height) {
            this.startDrag(false, scrollbarBG._x, scrollbarBG._y, scrollbarBG._x, scrollbarBG._height-this._height)
            txt.onEnterFrame = scrollThumbs;
            dragging = true
    scrollbar.onMouseUp = function() {
        stopDrag()
        dragging = false
        delete this.onEnterFrame;
    function scrollThumbs() {
        var funkyVar = -this._parent.scrollbar._y*(((this._height-this._parent.scrollbar._height)/(this._parent. scrollbarBG._height-this._parent.scrollbar._height))-1)
        this.Y = (funkyVar-this._y)*.2;
        this._y += this.Y;
        if(Math.abs(funkyVar-this._y)<1 && !dragging){
            delete this.onEnterFrame

    Thank you very much for the code.  After what you said, though, I went to find different code.  I used kirupa this time.  I just finished testing it out.  I typed in the code and it went a lot smoother.  However, the scroll bar top is STILL shifting to the side.  So it must mean it's not the code that is messing up?  All the registration points are in the upper left hand corner.  Should the points be somewhere else to stop the shifting?  Here's the code:
    scrolling = function () {
    var scrollHeight:Number = scrollTrack._height;
    var contentHeight:Number = contentMain._height;
    var scrollFaceHeight:Number = scrollFace._height;
    var maskHeight:Number = maskedView._height;
    var initPosition:Number = scrollFace._y=scrollTrack._y;
    var initContentPos:Number = contentMain._y;
    var finalContentPos:Number = maskHeight-contentHeight+initContentPos;
    var left:Number = scrollTrack._x;
    var top:Number = scrollTrack._y;
    var right:Number = scrollTrack._x;
    var bottom:Number = scrollTrack._height-scrollFaceHeight+scrollTrack._y;
    var dy:Number = 0;
    var speed:Number = 10;
    var moveVal:Number = (contentHeight-maskHeight)/(scrollHeight-scrollFaceHeight);
    scrollFace.onPress = function() {
    var currPos:Number = this._y;
    startDrag(this, false, left, top, right, bottom);
    this.onMouseMove = function() {
    dy = Math.abs(initPosition-this._y);
    contentMain._y = Math.round(dy*-1*moveVal+initContentPos);
    scrollFace.onMouseUp = function() {
    stopDrag();
    delete this.onMouseMove;
    btnUp.onPress = function() {
    this.onEnterFrame = function() {
    if (contentMain._y+speed<maskedView._y) {
    if (scrollFace._y<=top) {
    scrollFace._y = top;
    } else {
    scrollFace._y -= speed/moveVal;
    contentMain._y += speed;
    } else {
    scrollFace._y = top;
    contentMain._y = maskedView._y;
    delete this.onEnterFrame;
    btnUp.onDragOut = function() {
    delete this.onEnterFrame;
    btnUp.onRollOut = function() {
    delete this.onEnterFrame;
    btnDown.onPress = function() {
    this.onEnterFrame = function() {
    if (contentMain._y-speed>finalContentPos) {
    if (scrollFace._y>=bottom) {
    scrollFace._y = bottom;
    } else {
    scrollFace._y += speed/moveVal;
    contentMain._y -= speed;
    } else {
    scrollFace._y = bottom;
    contentMain._y = finalContentPos;
    delete this.onEnterFrame;
    btnDown.onRelease = function() {
    delete this.onEnterFrame;
    btnDown.onDragOut = function() {
    delete this.onEnterFrame;
    if (contentHeight<maskHeight) {
    scrollFace._visible = false;
    btnUp.enabled = false;
    btnDown.enabled = false;
    } else {
    scrollFace._visible = true;
    btnUp.enabled = true;
    btnDown.enabled = true;
    scrolling();

  • Scrolling Flash Content With Mouse Scroll Bar

    I created a custom scroll bar in AS2.0 and it works great.
    But now I would like the content to scroll with the mouse scroll
    wheel. Any ideas?

    Anyone know how to fix this on Mac Osx, it works in preview
    but not in safari. Any pointers?
    var mouseListener:Object = new Object ();
    mouseListener.onMouseWheel = function (delta)
    //contentMain._y += delta;
    scrollFace._y -= delta;
    if (scrollFace._y >= bottom)
    scrollFace._y = bottom;
    if (scrollFace._y <= top)
    scrollFace._y = top;
    updateContentPos ();
    Mouse.addListener (mouseListener);
    function updateContentPos ()
    var onePercent = (bottom - top) / 100;
    var scrollPerc = Math.floor ((scrollFace._y / onePercent) -
    37);
    var contentNewY = (contentMain._height * scrollPerc) / 100;
    //trace (scrollPerc + " " + contentNewY)
    contentMain._y = -contentNewY;
    }

  • Scrolling bar longer when imported

    Hallo everybody I have a very annoying problem with a
    movieclip.
    I have created a scrolling bar with some button attached and
    it works fine. When I open the related swf It is fine. The problem
    starts when I import it in my main .fla inside a MovieClip Holder.
    the scrolling bar is longer than the one that I can see in the
    single swf. What can I do?
    the site is www.studiosimultaneo.com and if yo go inn the
    section "portfolio" you can see the scrolling bar
    thank yo so much

    Thank you I did follow the tutorial that you gave me. It is
    actually very. If I follow the example it works but I cannot work
    it out if I have to use an Horizontal (x) bar and I just need the
    scroolbar.
    The code from the tutorial was:
    scrolling = function () {
    var scrollHeight:Number = scrollTrack._height;
    var contentHeight:Number = contentMain._height;
    var scrollFaceHeight:Number = scrollFace._height;
    var maskHeight:Number = maskedView._height;
    var initPosition:Number = scrollFace._y=scrollTrack._y;
    var initContentPos:Number = contentMain._y;
    var finalContentPos:Number =
    maskHeight-contentHeight+initContentPos;
    var left:Number = scrollTrack._x;
    var top:Number = scrollTrack._y;
    var right:Number = scrollTrack._x;
    var bottom:Number =
    scrollTrack._height-scrollFaceHeight+scrollTrack._y;
    var dy:Number = 0;
    var speed:Number = 10;
    var moveVal:Number =
    (contentHeight-maskHeight)/(scrollHeight-scrollFaceHeight);
    scrollFace.onPress = function() {
    var currPos:Number = this._y;
    startDrag(this, false, left, top, right, bottom);
    this.onMouseMove = function() {
    dy = Math.abs(initPosition-this._y);
    contentMain._y = Math.round(dy*-1*moveVal+initContentPos);
    scrollFace.onMouseUp = function() {
    stopDrag();
    delete this.onMouseMove;
    btnUp.onPress = function() {
    this.onEnterFrame = function() {
    if (contentMain._y+speed<maskedView._y) {
    if (scrollFace._y<=top) {
    scrollFace._y = top;
    } else {
    scrollFace._y -= speed/moveVal;
    contentMain._y += speed;
    } else {
    scrollFace._y = top;
    contentMain._y = maskedView._y;
    delete this.onEnterFrame;
    btnUp.onDragOut = function() {
    delete this.onEnterFrame;
    btnUp.onRollOut = function() {
    delete this.onEnterFrame;
    btnDown.onPress = function() {
    this.onEnterFrame = function() {
    if (contentMain._y-speed>finalContentPos) {
    if (scrollFace._y>=bottom) {
    scrollFace._y = bottom;
    } else {
    scrollFace._y += speed/moveVal;
    contentMain._y -= speed;
    } else {
    scrollFace._y = bottom;
    contentMain._y = finalContentPos;
    delete this.onEnterFrame;
    btnDown.onRelease = function() {
    delete this.onEnterFrame;
    btnDown.onDragOut = function() {
    delete this.onEnterFrame;
    if (contentHeight<maskHeight) {
    scrollFace._visible = false;
    btnUp.enabled = false;
    btnDown.enabled = false;
    } else {
    scrollFace._visible = true;
    btnUp.enabled = true;
    btnDown.enabled = true;
    scrolling();
    And I have tried to change the Height with the Width and the
    Y with The X like this:
    scrolling = function () {
    var scrollWidth:Number = scrollTrack._width;
    var contentWidth:Number = contentMain._width;
    var scrollFaceWidth:Number = scrollFace._width;
    var maskWidth:Number = maskedView._height;
    var initPosition:Number = scrollFace._x=scrollTrack._x;
    var initContentPos:Number = contentMain._x;
    var finalContentPos:Number =
    maskWidth-contentWidth+initContentPos;
    var left:Number = scrollTrack._x;
    var top:Number = scrollTrack._y;
    var right:Number = scrollTrack._x;
    var bottom:Number =
    scrollTrack._width-scrollFaceWidth+scrollTrack._x;
    var dy:Number = 0;
    var speed:Number = 10;
    var moveVal:Number =
    (contentWidth-maskWidth)/(scrollWidth-scrollFaceWidth);
    scrollFace.onPress = function() {
    var currPos:Number = this._y;
    startDrag(this, false, left, top, right, bottom);
    this.onMouseMove = function() {
    dy = Math.abs(initPosition-this._y);
    contentMain._x = Math.round(dy*-1*moveVal+initContentPos);
    scrollFace.onMouseUp = function() {
    stopDrag();
    delete this.onMouseMove;
    the contents are sliding from left to ride the But the
    scrollbar goes from top to bottom. I really want to understand how
    it works. the tutorial is very clear and I did follow it very
    carefully.
    Would you help me?
    Thank you

  • Scroll bar actions script issue

    I am having a problem with the action script for a scroll bar
    the code is complex and I did not write it but have managed to make
    other adjustments to get it to work...think we got the wrong raw
    file to work from because the scroll bar works in the file on the
    seller's server. Can't find the programmer now. If someone could
    please tell me what I am missing. The scroll bar works if you use
    the solid scroller in the middle but does not move the information
    and the arrows do not work at all. You can check this out at
    http://74.53.228.34/~jacob753/vocab/
    Just click on crossword and then load a topic and you will
    see that the scroll bar does not work at all. The floating window
    is another issue and I will put this in another message after this
    is fixed.
    The code is below:
    initClueListScroll = function(y){
    // y : hauteur de la cluelist (height of the cluelist)
    _global.clueListHeight = y
    _global.clueListScroll = true
    var c = clScrollClip
    c._x = Math.floor(cluelistClip._x+cluelistClip._width)
    c.scrollBG._height = gridSize*cellSize-40
    c.scrdownClip._y = c.scrollBG._y+c.scrollBG._height
    c.scroller._height =
    c.scrollBG._height*(gridSize*cellSize/y)
    // ---- on définit les actions (action definitions)
    c.scrdownClip.onRollOver = c.scrupClip.onRollOver =
    function(){
    this.gotoAndPlay(2)
    c.scrdownClip.onRollOut = c.scrupClip.onRollOut =
    function(){
    this.gotoAndStop(1)
    c.scrdownClip.onReleaseOutside = c.scrdownClip.onRelease =
    function(){
    this.gotoAndStop(1)
    var c = getMain().clScrollClip
    c.scrollBG.onRelease()
    c.scrupClip.onReleaseOutside = c.scrdownClip.onRelease =
    function(){
    this.gotoAndStop(1)
    var c = getMain().clScrollClip
    c.scrollBG.onRelease()
    c.scroller.onRollOver = function(){
    this.gotoAndStop(2)
    c.scroller.onRollOut = function(){
    this.gotoAndStop(1)
    c.scroller.onPress = function(){
    this.gotoAndStop(2)
    var c = getMain().clScrollClip
    var yMin = c.scrollBG._y
    var yMax =
    c.scrollBG._y+Math.floor(c.scrollBG._height-c.scroller._height)
    this.startDrag(false,0,yMin,0,yMax)
    getMain().onMouseMove = function(){
    var c = getMain().clScrollClip
    var yDes = c.scroller._y-20
    var yMax = Math.floor(c.scrollBG._height-c.scroller._height)
    var yFin = 20+Math.min(yDes,yMax)
    c.scroller.setGoTo(c.scroller._x,yFin,100,c.scroller._yscale,100,0,4)
    var yDiff =
    (yFin-c.scrollBG._y)*(gridSize*cellSize/c.scrollBG._height)
    if(yFin==yMax+20){
    var ymn = 0
    var ymx = clueListHeight-(gridSize*cellSize)
    yDiff = (ymx - ymn)*(yFin/(yMax+20))
    // pX, pY, pW, pH, pA, pR, pSpeed
    var cl = getMain().cluelistClip.contClip
    cl.setGoTo(cl._x,-yDiff+gridPosition.y,100,100,100,0,4)
    c.scroller.onRelease = c.scroller.onReleaseOutside =
    function(){
    stopDrag()
    this.gotoAndStop(1)
    delete getMain().onMouseMove
    c.scrollBG.onRelease = function(){
    var c = getMain().clScrollClip
    var yDes = c._ymouse-20<c.scroller._height ? 0 :
    c._ymouse-20
    var yMax = Math.floor(c.scrollBG._height-c.scroller._height)
    var yFin = 20+Math.min(yDes,yMax)
    c.scroller.setGoTo(c.scroller._x,yFin,100,c.scroller._yscale,100,0,4)
    var yDiff =
    (yFin-c.scrollBG._y)*(gridSize*cellSize/c.scrollBG._height)
    if(yFin==yMax+20){
    var ymn = 0
    var ymx = clueListHeight-(gridSize*cellSize)
    yDiff = (ymx - ymn)*(yFin/(yMax+20))
    // pX, pY, pW, pH, pA, pR, pSpeed
    var cl = getMain().cluelistClip.contClip
    cl.setGoTo(cl._x,-yDiff+gridPosition.y,100,100,100,0,4)
    c.scrollBG.onReleaseOutside = c.scrollBG.onRelease

    Try it in a simple test case.  I don't think that is default behavior.

  • Different Scroll bars in one file

    I've manually customized the look and feel of the scroll bars for scroll pane component and it works fine. I've two different files that have different visual styles for scroll bars. Now I want to merge these two files meaning I want to have one file with two different styles of scrollbars co-existing. I can resolve the naming conflicts but both of the them are using same asset names and action scripts (I think in the class definition).
    So basically my question if how can I have two different scroll bars implemented in one file?
    Many thanks

    You can make the clip that you want to play at 2 fps seem
    that way by just making it longer. Alternately, you could use a
    timed tween.

  • How can we remove the scroll bars from the table?

    Hi,
    I have a dynamic table. Currently the table appears with the scroll bars. But there is a requirement that the scroll bar should not appear and the table should stretch in the entire page. How can this be achieved.
    Thanks in advance
    Nita

    Thanks Mohammad for the reply.
    Was able to remove the scroll bars by using only the styleClass as AFStretchWidth. But there is a default partition in middle of the page still? Can i remove that too by any way.

  • The status bar is pushed up at about 3/4 of the screen, so I can view onlu firefox at about 1/4, good thing there is a scroll bar, but below the status bar is white display? can u please help me, I want to drag down the status bar so I can have a full vi

    The status bar is pushed up at about 3/4 of the screen, so I can view only Firefox at about 1/4, good thing there is a scroll bar, but below the status bar is white display? can u please help me, I want to drag down the status bar so I can have a full view
    == This happened ==
    Every time Firefox opened

    Your code is absolutely unreadable - even if someone was willing to
    help, it's simply impossible. I do give you a few tips, though: If you
    understand your code (i.e. if it really is YOUR code), you should be
    able to realize that your minimum and maximum never get set (thus they
    are both 0) and your exam 3 is set with the wrong value. SEE where
    those should get set and figure out why they're not. Chances are you
    are doing something to them that makes one 'if' fail or you just
    erroneously assign a wrong variable!

  • At times when dragging the vertical scroll bar my computer screen oscillates up and down for some time before going blank or not responding to any clicks requiring a forced system restart. What is wrong?

    Hi,
    Suddenly while working with Firefox if I happen to drag the vertical scroll bar, a very abnormal behavior occurs. My screen dances up and down for a short time before either going black or getting restored but with no clicks working. The only way to resume is to force a restart of the system.
    Any help would be deeply appreciated.
    Thanks and Regards
    Deepak

    That didn't work. On trying to install a new driver I got the error the graphics driver could not find compatible graphics hardware. Is there anything else that can be done to at least prevent the hanging of the computer even if it means less features from Firefox being available?

  • I would like to know it it's possible to change the scroll bar from the right part of the firefox browser, to the left part and, if it's possible, how can it be done. Thank you!

    The scroll bar (the one used to scroll up and down any kind of website), that is normally in the right part of the firefox browser, would be of much help to me if it could sometimes be moved to the left part of the browser. Is this possible? How can it be done? Can anybody tell me the exact steps to take in order to do this (if it is possible of course)? This would be helpfull to me, since I think that the firefox scroll bar is overlaping the scroll part of the facebook chat sidebar, since I just can see a few people on this facebook chat sidebar and I can´t scroll along it, as I could a while ago. So my guess is that the firefox scroll bar is covering the other. In order to solve it in a simpler way, I guessed that if the firefox scroll bar could be moved to the left side of the browser, this problem could be solved. So, can anybody help me?

    http://kb.mozillazine.org/layout.scrollbar.side
    Type '''about:config''' in Location (address) bar
    filter for '''layout.scrollbar.side'''
    Right-click the Preference and Modify it to '''3'''
    You may need to reload any pages open to have scrollbar move to left after Preference change.

  • Help with code for inserting horizontal scroll bar in photo gallery in Business Catalyst site?

    Hi,
    I am using Business Catalyst and Dreamweaver to create a trial site.
    I am not sure if this is the correct forum to post this request but anyway I have inserted a photo gallery module at the bottom of the sidebar in the homepage of my test site.
    Can anyone advise on whether jquery or any other code can be inserted into the page or module code that will replace the "next" hyperlink below the first 4 photos with a horizontal scroll bar at bottom of the gallery so users can just scroll through all 12 images ?
    Kind Regards, Matt.
    http://craftime-bs6.businesscatalyst.com/

    Alyssa,
    Have you tried putting this rule back as it was originally:
    /* Submenu that is showing with class designation MenuBarSubmenuVisible, we set left to auto so it comes onto the screen below its parent menu item */
    ul.MenuBarHorizontal ul.MenuBarSubmenuVisible
        left: auto; /*was 9px*/
        color: #EF9CCF;
        background-color: #FFF;
    That is, changing your 9px back to auto.
    And giving  us a link (as you did) is much better than printing out the code for us! Thanks!
    Beth

Maybe you are looking for

  • "XFA template Model is empty" error

    I have a process that takes an interactive form and makes it non-interactive. It works really well for one form when I use the literal for the input to my Render PDF. I need to be able to give the process any one of about 100 different forms and have

  • Running IMovie with Front Row

    Can IMovie, on a Macmini, be recording images and sound from a camera, such as a web cab, while at the say time Front Row? I record Karaoke performance for posting on the Internet. The songs with lyrics are shown on a screen.

  • Get Parent Control

    I have a tab folder with several tabs, and in one of the tabs I have another tab folder. When I start the test I can reach all tab items from the parent tab folder. I have the following code: get-tab-folder | get-tab-item "Übersicht" | click get-tab-

  • Iphoto 09 - Batch change changes ALL Pictures ?

    I tried to use Batch change and only selected some pictures but saw that the batch changed information in ALL the photos in my iPhoto not just the selected ones! I wanted to change only some pictures. Anyone one seen this? thanks

  • My battery drains really fast and my macbook shuts off without warning when disconnected from power, what is wrong and how can I fix it?

    My battery drains really fast and my macbook shuts off without warning basically everytime it is disconnected from power, what is wrong and how can I fix it? also whenever an application is opened the computer freezes and the application will either