我正在开发GUI,我是一名业余程序员。我对此代码有问题。我在画框上什么也看不见。
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1366, 768);
JPanel contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
Container midPanel = new JPanel();
midPanel.setLayout(null);
Dimension preferredSize = new Dimension(700, 700);
midPanel.setPreferredSize(preferredSize);
.....
Container k1 = new JPanel();
k1.setSize(50, 700);
k1.setLocation(0, 0);
k1.setLayout(new GridLayout(rowNum, 1));
k1.setVisible(true);
midPanel.add(k1);
.......
Dimension jspD = new Dimension(500,500);
JScrollPane jsp = new JScrollPane(midPanel);
jsp.setPreferredSize(jspD);
jsp.setLocation(0, 0);
jsp.setVisible(true);
contentPane.add(jsp);
我将感谢你的帮助。
midPanel.setLayout(null);
您应该始终使用布局管理器,永远不要出于任何原因删除布局,除非您有使用绝对布局所需的分配(null布局)。
问题是绝对布局,每次添加组件时都必须通过component.setBounds(x,y,width,height)
指定面板内组件的位置,否则,它将不可见。
请参阅本教程中的"使用布局管理器"。