我需要编写一个GUI,每次按下Draw Circle/Draw Line按钮时都会绘制圆/线。编写ActionListener通过按下按钮来绘制形状
该框架工作得很好,但我无法实现此程序的ActionListener。我不知道如何用“boolean circZ”连接按钮。我试过的每一件东西都给我错误
也许你可以帮忙。
public class fram extends JFrame {
fram(){
JPanel panel = new JPanel();
add(panel);
JButton btn1 = new JButton("Draw Circle");
JButton btn2 = new JButton("Draw Lines");
panel.add(btn1);
panel.add(btn2);
MyPanel obj = new MyPanel();
panel.add(obj);
}
public class MyPanel extends JPanel{
public boolean circZ = true;
public void paintComponent(Graphics g){**
super.paintComponent(g);
if(cicZ == true){
g.setColor(Color.BLACK);
g.drawOval(150, 50, 50, 50);
}else if(circZ==false){
...
}
}
}
public class CRListener implements ActionListener(){
!!! I DO NEED HELP HERE !!!
}
public static void main(String[]args){
fram f = new fram();
f.paint(null);
}
的'ActionListener'已被添加到'JFrame'。所以我会在'fram'类中做事件处理,因为它扩展了'JFrame'并声明为:'public class fram extends JFrame implements ActionListener'。这有帮助吗? – progyammer
另外,在'fram'类构造函数中需要'addActionListener(this)'语句。 – progyammer