16

I would like to have a JTextPane that have scroll bar, how can I do so ? Thanks.

mKorbel
  • 108,320
  • 17
  • 126
  • 296
DNB5brims
  • 25,200
  • 45
  • 121
  • 180

5 Answers5

20

To insert a scroll bar on your new JTextPane, just use a JScrollPane:

JTextPane txt = new JTextPane();

JScrollPane jsp = new JScrollPane(txt);

JTextPane API: http://download.oracle.com/javase/6/docs/api/javax/swing/JTextPane.html

JScrollPane API: http://download.oracle.com/javase/6/docs/api/javax/swing/JScrollPane.html

If you have some issues, take a look at this SO question : Java JTextPane JScrollPane Display Issue

Or take a look at: http://www.daniweb.com/software-development/java/threads/30283

Community
  • 1
  • 1
Alberto Solano
  • 7,454
  • 3
  • 33
  • 57
5

Wrap it into a JScrollPane. Read the swing tutorial about scroll panes.

JB Nizet
  • 633,450
  • 80
  • 1,108
  • 1,174
3

Just put the JTextPane in a JScrollPane.

public class SomeFrame
{
  public static void main( String[] args )
  {
    JFrame frame = new JFrame( );
    frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

    JTextPane tp = new JTextPane();
    JScrollPane sp = new JScrollPane(tp);
    frame.getContentPane().add( sp );

    frame.pack( );
    frame.setVisible( true );
  }
}
S.L. Barth
  • 7,954
  • 71
  • 47
  • 62
1

Here is the code to add a scrollbar to the TextBox

JEditorPane edtDTWinfo = new JEditorPane();
edtDTWinfo.setEditable(false);
edtDTWinfo.setBorder(new LineBorder(Color.ORANGE, 2));
edtDTWinfo.setForeground(Color.BLUE);
JScrollPane spEditor = new JScrollPane(edtDTWinfo,
        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
        JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
spEditor.setBounds(0, 0, 200, 300);

Add component "spEditor" to the JPanel

M. S.
  • 3,461
  • 10
  • 22
  • 33
S G
  • 413
  • 3
  • 10
0

Before this just add a ScrollPane to ContentPane in Design and add EditopPane to ScrollPane as child

JScrollPane sp = (JScrollPane)contentPane.getComponent(23);//this is in my hierarchy 23
JViewport vp = sp.getViewport();
JEditorPane ep = (JEditorPane)vp.getView();
Qantas 94 Heavy
  • 14,790
  • 31
  • 61
  • 78
Vladdi
  • 1
  • 2