当前位置: 代码迷 >> J2SE >> 关于JScrollPane滚动面板的有关问题
  详细解决方案

关于JScrollPane滚动面板的有关问题

热度:142   发布时间:2016-04-24 02:30:08.0
关于JScrollPane滚动面板的问题
各位大侠,我在创建JScrollPane滚动面板是遇见了这样两个问题:
第一个问题:
JTextArea ta=new JTextArea(20,15);
JScrollPane sp=new JScrollPane(ta); //这样写没有错误
JScrollPane sp=new JScrollPane(ta,1,0); //但这样写就抛出异常,能通过编译但就是不能运行。
或者将上句改为
Java code
JScrollPane sp=new JScrollPane(ta,                ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER,                ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);

也不行,和上一句一样。我看类库里面明明可以使用啊,为什么这里会出错吗?难道是我的JDK的问题?我用的是最新的JDK-1.6.0_23。
这是我的代码:
Java code
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class DemoScrollPane extends JFrame {    DemoScrollPane() {        super("ScrollPane");        Container cp=getContentPane();        cp.setLayout(new FlowLayout());        JTextArea ta=new JTextArea(20,15);        JScrollPane sp=new JScrollPane(ta,                ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER,                ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);        cp.add(sp);        setVisible(true);        pack();    }    public static void main(String sd[]){        DemoScrollPane frm=new DemoScrollPane();    }}


第二个问题:
我想为一个Panel或者JTextArea等Component创建一个JScrollPane,想让它在水平方向上不用滚动条,超出水平边界自动换行,垂直方向上使用滚动条,应该怎么实现呢?我按第一个问题那样试了一下但出问题了,行不通,跪求高手指点,谢谢!

------解决方案--------------------
后两个参数顺序颠倒了。
Java code
JScrollPane sp=new JScrollPane(ta,                ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,                ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);