Fernando

O c�digo abaixo faz o que voc� precisa.

� s� voc� utilizar o Scrollbar do Scrollpane que ele
tem as propriedades necess�rias.


import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class JScrollPaneTest extends JFrame {
    String doc =
        "asdfd asdfadf asdfadf asfadf \nadsfaf asdfadf
asdfasdf \n"
            + "asdfadf asdfafda asdfadf a sdfadf
asdfasd \n"
            + "asdfadf asdfafda asdfadf\n a sdfadf
asdfasd\n "
            + "asdfadf asdfafda asdfadf asdfafda
asdfadf asdfafda asdfadf a sdfadf asdfasd\n "
            + "asdfadf asdfafda asdfadf asdfafda
asdfadf asdfafda asdfadf a sdfadf asdfasd\n "
            + "asdfadf asdfafda asdfadf asdfafda
asdfadf asdfafda asdfadf a sdfadf asdfasd\n "
            + "asdfadf asdfafda asdfa\ndf a sdfadf
asdfasd \n"
            + "asdfadf asdfafda asdfadf a sdfadf
asdfasd \n"
            + "asdfa sdfadsf asdfadf as\ndfad asdfad
asdfadf";

    JTextArea area;
    JScrollPane scroller;
    JButton up;
    JButton dn;
    JButton lf;
    JButton rg;
    JScrollBar verbar; //armazena o scrollbar vertical
do scroller
    JScrollBar horbar; //armazena o scrollbar
horizontal do scroller

    JScrollPaneTest() {
        super("AutoScroller Tester");
        JPanel panel = (JPanel) getContentPane();
        area = new JTextArea(10, 10);
        area.setText(doc);
        area.setWrapStyleWord(true);

        scroller = new JScrollPane(area);
        verbar = scroller.getVerticalScrollBar();
        horbar = scroller.getHorizontalScrollBar();
        panel.add(scroller, BorderLayout.CENTER);

        JPanel panelButton = new JPanel(new
FlowLayout());
        lf = new JButton("Left");
        up = new JButton("Up");
        dn = new JButton("Down");
        rg = new JButton("Right");
        panelButton.add(lf);
        panelButton.add(up);
        panelButton.add(dn);
        panelButton.add(rg);
        
        BtnListener b = new BtnListener();
        
        up.addActionListener(b);
        dn.addActionListener(b);
        rg.addActionListener(b);
        lf.addActionListener(b);

        panel.add(panelButton, BorderLayout.SOUTH);

        pack();
        show();
       
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    
    class BtnListener implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            if(e.getActionCommand().equals("Down")){
                verbar.setValue(verbar.getValue()+1);
            } else
if(e.getActionCommand().equals("Up")){
                verbar.setValue(verbar.getValue()-1); 
              
            } else
if(e.getActionCommand().equals("Left")){
                horbar.setValue(horbar.getValue()-1); 
              
            } else
if(e.getActionCommand().equals("Right")){
                horbar.setValue(horbar.getValue()+1); 
              
            }
        }
    }
    
    public static void main(String[] args) {
        new JScrollPaneTest();
    }
}




--- Fernando <[EMAIL PROTECTED]> wrote:
> Estou usando o JAreaText em um JScroolPane... eu n�o
> encontrei nada na documenta��o que fa�a rolar a
> barra para cima ou para baixo via C�DIGO fonte.
> (Isso normalmente acontece autom�ticamente pelo
> componente JScroolPane, mas eu preciso executar via
> c�digo as vezes subir, outras descer.) 
> 
> Fernando Franzine
> 
> 
> 
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system
> (http://www.grisoft.com).
> Version: 6.0.501 / Virus Database: 299 - Release
> Date: 14/07/03
> 


=====
[EMAIL PROTECTED]
www.marcelloschmidt.tk
Linux user #297319
http://counter.li.org

__________________________________
Do you Yahoo!?
Yahoo! SiteBuilder - Free, easy-to-use web site design software
http://sitebuilder.yahoo.com

---------------------------------------------------------------------
Para cancelar a subscri��o, envie mensagem para: [EMAIL PROTECTED]
Para comandos adicionais, envie mensagem para: [EMAIL PROTECTED]

Responder a