之前一直用JScrollPane里面放一個JTextArea,就可以在文本框內實現滾動條。
但是最近做一個小demo,需要在JPanel中實現滾動條,就找了下資料,做好了,現在記錄一下,防止以后再用到。
JFrame
|——JPanel
|——JScrollPane
|——JPanel
層級關系是JFrame里面添加JPanel①,JPanel①里面 添加JScrollPane(為了讓滾動條展示出來,這里的size要稍微比JPanel①的size小一點),JScrollPane里面添加JPanel②。
具體代碼如下:
public Test(){ JFrame jf = new JFrame(); jf.setBounds(200, 200, 500, 500); jf.setVisible(true); jf.setLayout(null); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JPanel panel1 = new JPanel(); panel1.setBounds(0, 0, 500, 500); panel1.setLayout(null); panel1.setVisible(true); JScrollPane jsp = new JScrollPane(); jsp.setBounds(0, 0, 350, 350); JPanel panel2 = new JPanel(); panel2.setPreferredSize(new Dimension(600, 600)); panel2.setVisible(true); jsp.getViewport().add(panel2); jsp.validate(); panel1.add(jsp); jf.add(panel1); jf.setVisible(true); }