在JPanel中,我创建的JLabel很少:
...
Random rand = new Random();
Color col = new Color(rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat());
Color playColor= new Color(col.getRed(), col.getGreen(), col.getBlue(), col.getAlpha());
sqr.setOpaque(true);
sqr.setBackground(playColor);
sqr.setLayout(null);
...
当我点击任何JLabel(mouseClicked(MouseEvent e))时,我可以在JOptionPane中获取有关它的信息。在同一个JOptionPane中,我有checkBox来标记所选标签(check-> setBorder(BorderFactory.createLineBorder(Color.red)),取消选中 - > gt; setBorder(null)。当我检查然后取消选中jLabel时,会发生这样的事情。 :
如何从标签中删除这些复选框?
编辑:标签上的checkBoxes只是图片,而不是真正的checkBoxes。也许这张照片会有所帮助:
这个带红色边框的方格现在由JOptionPane上的chechBox Mark检查。之前检查了左边的这个(上面有checkBox图片)。我不知道如何解释这个,它只是在我点击JOptionPane上的复选框标记后发生的。点击后我在标签上设置红色边框或设置border null,仅此而已。
答案 0 :(得分:2)
顺便说一句,(这可能应该是一个评论,但我正在使用代码块的答案)这个..
Color col = new Color(
rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat());
Color playColor= new Color(col.getRed(), col.getGreen(), col.getBlue(), col.getAlpha());
..相当于..
Color playColor = new Color(
rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat(),
rand.nextFloat());
答案 1 :(得分:1)
这些复选框不会“恰好”出现在那里。你在标签的某处画它们吗?!请仔细检查!
多一点代码会很有用。