tDisplay是一个JEditorPane``放在一个JScrollPane里```
在运行到`
   po = new Point(0, (int)(tDisplay.getHeight()));
   sDisplay.getViewport().setViewPosition(po);
时``会有ArrayIndexOutOfBoundsException```可又不是每次都有```这句sDisplay.getViewport().setViewPosition(po);到底是怎么实现的```应该是我这个Point的值不对``可我又不知道怎么能是个对的值```大家帮忙!

解决方案 »

  1.   

    怎么用JScrollBar``也不行``
    在这句上
     sBar.setValue( sBar.getMaximum());
    也有同样的异常`!
      

  2.   

    可以看源码,不过我觉得没有必要,我还想知道Windows是怎么画Window的呢
      

  3.   

    我也碰到类似的问题,不过,包含的是JTable。
      

  4.   

    不要用
    sDisplay.getViewport().setViewPosition(po);
    自动滚屏无非是定时滚动一下,用下面的试试
    JScrollBar sBar=sDisplay.getVerticalScrollBar();
    int max=sBar.getMaximum();
    int min=sBar.getMinimum();int delay = 1000; //milliseconds
    ActionListener taskPerformer = new ActionListener() {
        public void actionPerformed(ActionEvent evt) {
            sBar.setValue(min+(max-min)/10);
        }
    };
    new Timer(delay, taskPerformer).start();