Java 将scrollpane添加到包含另一个面板的面板中

Java 将scrollpane添加到包含另一个面板的面板中,java,swing,jpanel,jscrollbar,Java,Swing,Jpanel,Jscrollbar,我有一个面板drawSomething来画一些东西,我需要它的大小是大的,我在我的框架中有另一个面板来放这个面板drawSomething,所以,我需要在面板周围放一个滚动窗格,我怎么做 以下是我的示例代码: import java.awt.Color; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; public class myFrame extends JFra

我有一个面板drawSomething来画一些东西,我需要它的大小是大的,我在我的框架中有另一个面板来放这个面板drawSomething,所以,我需要在面板周围放一个滚动窗格,我怎么做

以下是我的示例代码:

import java.awt.Color;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;


public class myFrame extends JFrame{

    public static void main(String[] args) {
        myFrame mf = new myFrame();
        mf.setSize(400,400);
        mf.setVisible(true);
        mf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        mf.setLayout(null);

        JPanel panel1 = new JPanel();
        panel1.setBackground(Color.yellow);
        JPanel drawSomething = new JPanel();
        panel1.setBounds(100, 100, 200, 200);
        drawSomething.setSize(500, 500);
        drawSomething.setBackground(Color.BLACK);

        panel1.add(drawSomething);
        JScrollPane scroll = new JScrollPane(panel1);
        mf.add(scroll);

    }
}

panel1.addnew JScrollPanedrawSomething?通过选择布局mf.setLayoutnull,null布局将不会帮助启动;这是首先要解决的问题。查看如何使用LayoutManager并修复此问题。接下来,考虑使用java标准类名MyFrimk,而不是MyFrror。一旦你有了一个布局集,然后开始按照你的需要一个一个地添加组件。而且,在这种情况下,你甚至不需要将你的类扩展到JFrame。我认为最好直接将您的框架初始化为JFrame的实例,因为您并没有向子类“myFrame”添加任何内容。这里的描述和代码之间存在差异