Java 使用AWT在GUI中获取itemListener()错误
“Mycheckbox”类扩展框架实现ItemListener时出错: 类型Mycheckbox必须实现继承的抽象方法 ItemListener.itemStateChanged(ItemEvent) 我在程序中使用AWT对GUI进行编码:Java 使用AWT在GUI中获取itemListener()错误,java,user-interface,awt,itemlistener,Java,User Interface,Awt,Itemlistener,“Mycheckbox”类扩展框架实现ItemListener时出错: 类型Mycheckbox必须实现继承的抽象方法 ItemListener.itemStateChanged(ItemEvent) 我在程序中使用AWT对GUI进行编码: import java.io.*; import java.awt.Checkbox; import java.awt.FlowLayout; import java.awt.Frame; import java.awt
import java.io.*;
import java.awt.Checkbox;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.event.*;
class Mycheckbox extends Frame implements ItemListener {
String msg="";
Checkbox c1,c2,c3;
Mycheckbox(){
setLayout(new FlowLayout());
c1=new Checkbox("Bold",true);
c2=new Checkbox("Italic");
c3=new Checkbox("Underline");
add(c1);
add(c2);
add(c3);
c1.addItemListener(this);
c2.addItemListener(this);
c3.addItemListener(this);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
}
});
}
public void ItemStateChanged(ItemEvent ie){
repaint();
}
public void paint(Graphics g){
g.drawString("Current state",10,100);
msg="Bold:" +c1.getState();
g.drawString(msg,10,100);
msg="Italic:" +c2.getState();
g.drawString(msg,10,100);
msg="Underline:" +c3.getState();
g.drawString(msg,10,160);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Mycheckbox mc=new Mycheckbox();
mc.setSize(400,400);
mc.setTitle("check box");
mc.setVisible(true);
}
}
Java是区分大小写的:编译器明确地告诉您实现一个名为
itemStateChanged
的方法,您决定用大写的I
实现itemStateChanged
。因此根据编译器itemStateChanged
没有实现。为什么要使用AWT?请参阅,了解放弃AWT使用组件而支持Swing的许多好理由。