NetBeans:如何将ScrollBar添加到JPanel

时间:2011-10-01 11:26:37

标签: java swing netbeans jscrollpane jscrollbar

我正在NetBeans中开发一个小型桌面应用程序。在我的UI上,我放置一个JPanel并在其上放置一个JLabel。这个JLabel的内容是动态生成的,所以如果内容非常大,那么它会离开屏幕。所以我可以用任何方式为JPanel指定一个固定的大小,当然当文本超出时,ScrollBars会出现屏幕尺寸。

4 个答案:

答案 0 :(得分:7)

您必须将Component引用传递给JScrollPane构造函数。 它会工作正常。您可以定义使用JScrollPane 以下是我过去的项目中JPanel的JScrollPane的sudo示例。希望它对你有用。

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

public class Frame01
{
    public static void main(String[] args){
        SwingUtilities.invokeLater (new Runnable ()
        {
            public void run ()
            {
                JFrame frame = new JFrame("panel demo");
                frame.setDefaultCloseOperation (JFrame.DISPOSE_ON_CLOSE);

                JPanel panel = new JPanel();
                Container c = frame.getContentPane();
                panel.setSize(100,100);
                panel.setLayout(new GridLayout(1000,1));
                for(int i = 0; i<1000;i++)
                panel.add(new JLabel("JLabel "+i));

                JScrollPane jsp = new JScrollPane(panel);
                c.add(jsp);
                frame.setSize(100,100);
                frame.setVisible(true);
            }
        });
    }
}

答案 1 :(得分:6)

使用JScrollPane包含您的大型JPanel。

答案 2 :(得分:2)

so in case when the contents are very large it goes out of screen,也许您必须查找TextComponents JTextArea or JEditorPane,教程包含的示例包括JScrollPane的基本用法

答案 3 :(得分:1)

在导航器中,用鼠标右键单击JPanel - &gt;封闭 - &gt;滚动窗格。

完成!,你现在滚动