禁用自动滚动

时间:2014-03-15 15:25:08

标签: java swing jscrollpane jtextpane

我已经向JTextPane添加了一个JScrollPane,我试图将垂直条设置为零,因此它会显示为不滚动。实际上我的目标是禁用向右和向下的自动滚动。以下是我的代码 JTextPane jtp1 = new JTextPane(); jtp1.setText("bhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhbhbbbbbbbbbbbbbbbbhbbbbbbbbbbbbbbbbbb b"); jtp1.setEditable(false); JScrollPane scrollpane2 = new JScrollPane(jtp1,JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); scrollpane2.getVerticalScrollBar().setValue(0);

1 个答案:

答案 0 :(得分:1)

在文本窗格中关闭换行的简单解决方案。解决方案是使用BorderLayout将文本窗格添加到JPanel,然后将面板添加到滚动窗格:

尝试以下代码

JTextPane jtp1 = new JTextPane();
jtp1.setText("bhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhbhbbbbbbbbbbbbbbbbhbbbbbbbbbbbbbbbbbb b");
jtp1.setEditable(false);

JPanel noWrapPanel = new JPanel( new BorderLayout() );
noWrapPanel.add( jtp1 );

JScrollPane scrollpane2 = new JScrollPane(noWrapPanel);

JFrame frame=new JFrame();
frame.add(scrollpane2);
frame.setSize(200,100);
frame.setVisible(true);

另请参阅JTextPane line wrapping