且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

产生滚动条时JPanel的大小发生变化

更新时间:2022-08-13 10:20:25

使用Java swing编写一个小工具时遇到一个问题

界面如下:
产生滚动条时JPanel的大小发生变化
 

红框中的内容是一个JPanel,代码如下

Java代码  产生滚动条时JPanel的大小发生变化
  1. panel_9 = new JPanel();  
  2.         panel_9.setLayout(new GridLayout(13));  
  3.           
  4.         panel_9.setBorder(new LineBorder(Color.GREEN));  
  5.         GridBagConstraints gbc_panel_9 = new GridBagConstraints();  
  6.         gbc_panel_9.anchor = GridBagConstraints.WEST;  
  7.         gbc_panel_9.insets = new Insets(0055);  
  8.         gbc_panel_9.fill = GridBagConstraints.VERTICAL;  
  9.         gbc_panel_9.gridx = 2;  
  10.         gbc_panel_9.gridy = 1;  
  11.         panel_8.add(panel_9, gbc_panel_9);  
  12.           

 

但是当下面的JScrollPane 有滚动条时panel就自动缩小了,如下图
产生滚动条时JPanel的大小发生变化
 

解决方法:

把panel的 gbc_scrollPane_1.fill  由GridBagConstraints.VERTICAL改为GridBagConstraints.BOTH