我想在单击按钮时向我的jFrame添加一个新标签,而我只是希望它是一个具有蓝色背景且没有文本的矩形。

我正在运行以下代码:

private void jButton9ActionPerformed(java.awt.event.ActionEvent evt) {
   JLabel lable23 = new JLabel("Loop Label");
   lable23.setLocation(570, 60);
   lable23.setOpaque(true);
   lable23.setBackground(Color.BLUE);
   add(lable23);
   validate();
   repaint();
}


但是,当我单击该按钮时,没有任何效果。
我尝试添加JFrame.add()和JFrame.validate并重新绘制,但这只是给了我一个语法错误。任何指针都很棒。

谢谢

最佳答案

尝试添加一个大小到您的组件,它将起作用

    JLabel lable23 = new JLabel("Loop Label");
    lable23.setLocation(1, 1);
    lable23.setSize(10, 10);
    lable23.setOpaque(true);
    lable23.setBackground(Color.BLUE);
    add(lable23);
    validate();
    repaint();


当然,强烈建议不要使用null布局。我建议您使用jPanels来组织组件,并使用Layout managers将它们放置在框架上!

07-26 07:43