我需要編寫一個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