我想知道如何在选中复选框时隐藏第二个drawOval:
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawOval(175, 185, 80, 45);
g.drawOval(170, 185, 80, 45);
我是Java的初学者,我找不到如何隐藏它。
所以更具体
我在设计面板中有一个复选框
当我单击复选框时
第二个drawOval应该消失。
可以使用6条线吗?
最佳答案
可以使用6条线吗?
不,您必须修改该代码。根据if块中的复选框状态包装要绘制或不绘制的drawOval线。在if布尔测试内部-检查JCheckBox是否已选中,如果是,则绘制椭圆。如果不画,那就简单!
if (myCheckBox.isSelected()) {
g.drawOval(....)
}
还将动作侦听器添加到JCheckBox中,该侦听器可以执行以下操作:在JPanel上调用
repaint()
。