EDIT2:如果我尝试将JLabel添加到您在第二张图片中看到的复选框区域,我也会得到一个白色/灰色区域。
编辑:另请注意:当我刚创建一个JLabel并在将totalResultArea添加到panelResults之前添加它时,它也只显示一个白色/灰色区域。
我创建了两个JPanel panelResults
和totalResultArea
,,但只看到第二个面板的白色/灰色区域(totalResultArea
)。
首先,我将panelResults
的布局设置为GridBagLayout
JPanel panelResults = new JPanel();
JPanel totalResultArea = new JPanel();
panelResults.setLayout(new GridBagLayout());
然后我将totalResultArea
添加到panelResults
:
GridBagContraints c = new GridBagConstraints();
totalResultArea.setLayout(new BoxLayout(totalResultArea, BoxLayout.Y_AXIS));
c.gridx = 0;
c.gridy = 0;
c.gridwidth = 2;
c.weightx = 2;
panelResults.add(totalResultArea, c);
在按钮的点击事件监听器中,我向JLabel
添加totalResultArea
并将JFrame
设为可见:
JLabel totalResultsText = new JLabel("<html><body>...</body></html>");
totalResultArea.add(totalResultsText);
// revalidate and repaint totalResultArea and panelResults
totalResultArea.revalidate();
totalResultArea.repaint();
panelResults.revalidate();
panelResults.repaint();
// add panelResults to frame
frame.getContentPane().add(panelResults, BorderLayout.NORTH);
// invalidate, repaint the frame and make it visible
frame.invalidate();
frame.repaint();
frame.setVisible(true);
这一切看起来像这样:
我希望你能重现这一点。如果没有看到图片。
有什么可能是共鸣,我没有看到JLabel的文字,只有白色/灰色区域?