JScrollPane为什么没有滚动条

时间:2022-04-21 21:26:06
我再一个frame上面添加了两个JPanel:buttonPane,textPane,因为textPane里面的内容是动态生成的,内容可能会很多,所以我加一个JScrollPane,希望可以滚动显示,代码如下,可是滚动条显示不出来
        buttonPane = new JPanel();
        buttonPane.setLayout(null);
        textPane = new JPanel();
        textPane.setLayout(null);
        buttonPane.setFont(new java.awt.Font("Monospaced", 0, 12));
        textPane.setFont(new java.awt.Font("Monospaced", 0, 12));

        JScrollPane scrollPane = new JScrollPane(textPane,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
        scrollPane.setBounds(2,2,590,300);
        scrollPane.setFont(new java.awt.Font("Monospaced", 0, 12));
        scrollPane.setWheelScrollingEnabled(true);

8 个解决方案

#1


show了没有?

#2


ScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
ScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

ScrollPane.setVerticalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
ScrollPane.setVerticalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

#3


JScrollPane中放JPanel应该不行的吧。
你用JTextArea试试,
JTextArea txtArea = new JTextArea();
JScrollPane scrollPane = new JScrollPane(
   txtArea,   
   JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
   JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

#4


不能放JPanel嘛?但是也不能方JTextArea呀,我再JPanel中方了很多控件,所以才希望用JScrollPane,不知道用JScrollBar行不行

#5


你就是没有加下面这两个而已,只要内容被撑起来,滚动条就会出现了。
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
   JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS

#6


textPane.setPreferredSize

#7


我加了呀,你看看代码里面
JScrollPane scrollPane = new JScrollPane(textPane,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS)

实际上滚动条是出现了,但是不能滚动,我把textPane的高度设置的比scrollPane 大很多,还是不行

#8


高手还是高手呀.搞定了
textPane.setPreferredSize
谢谢

#1


show了没有?

#2


ScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
ScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

ScrollPane.setVerticalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
ScrollPane.setVerticalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

#3


JScrollPane中放JPanel应该不行的吧。
你用JTextArea试试,
JTextArea txtArea = new JTextArea();
JScrollPane scrollPane = new JScrollPane(
   txtArea,   
   JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
   JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

#4


不能放JPanel嘛?但是也不能方JTextArea呀,我再JPanel中方了很多控件,所以才希望用JScrollPane,不知道用JScrollBar行不行

#5


你就是没有加下面这两个而已,只要内容被撑起来,滚动条就会出现了。
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
   JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS

#6


textPane.setPreferredSize

#7


我加了呀,你看看代码里面
JScrollPane scrollPane = new JScrollPane(textPane,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS)

实际上滚动条是出现了,但是不能滚动,我把textPane的高度设置的比scrollPane 大很多,还是不行

#8


高手还是高手呀.搞定了
textPane.setPreferredSize
谢谢