Java JScrollPane - PullRequest
       16

Java JScrollPane

6 голосов
/ 14 октября 2011

Я пытаюсь добавить вертикальную прокрутку моих текстовых программ java. Я использую этот код для создания моей JScrollPane:

console = my textarea.

Я также объявляю JScrollPane вертикальным;

        vertical = new JScrollPane(console);
    vertical.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    vertical.setVisible(true);
    this.add(vertical);

EDIT:

Вид программы:

enter image description here Я новичок в Java, но не должен это работать и добавить вертикальную полосу прокрутки к моей текстовой области

Что я делаю не так?

Спасибо за любую помощь.

Ответы [ 3 ]

8 голосов
/ 14 октября 2011

Вот пример:

enter image description here

import java.awt.Dimension;
import javax.swing.*;

public class ScrolledPane extends JPanel
{
    private JScrollPane vertical;
    private JTextArea console;

    public ScrolledPane()
    {
        setPreferredSize(new Dimension(200, 250));
        console = new JTextArea(15, 15);

        vertical = new JScrollPane(console);
        vertical.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
        add(vertical);
    }


    public static void main( String args[] )
    {
        new JFrame()
        {{
            getContentPane().add(new ScrolledPane());
            pack();
            setVisible(true);
        }};
    }
}
7 голосов
/ 14 октября 2011

Я думаю, что в официальном уроке о JTextArea и JScrollPane все об этом описано, другие примеры здесь и здесь

mySchroll = new JScrollPane(myTextArea, 
    ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,
    ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
1 голос
/ 27 августа 2018
import javax.swing.*;
import java.awt.*;

public class Demo extends JFrame {

    private JTextArea textArea;
    private JScrollPane scroll;

    Demo(){
        super("Write here...");
        textArea = new JTextArea();
        scroll = new JScrollPane(textArea);
        scroll.setVerticalScrollBarPolicy(22); /*22 is a const value for always vertical */
        add(scroll, BorderLayout.CENTER);

        setSize(270,270);
        setVisible(true);

    }

    public static void main(String[] args) {
        new Demo();
    }



}

Вывод кода: См.

...