import javax.swing.;
import java.awt.event.;
public class TestDraw extends JFrame{
MyCanvas myc = null;
public TestDraw(){
initFrame();
}
public void initFrame(){
setSize(800,600);
JMenuBar jbar = new JMenuBar();
JMenu draw = new JMenu("绘图");
JMenultem m_line = new JMenultem("直线");
m.line.addActionListener(new MenultemHandler());
JMenuItem m_circle = new JMenultem("圆");
JMenultem m_Rectangle = new JMenultem("矩形");
JMenultem m_oval = new JMenultem("椭圆");
draw.add(m_line);
draw.add(m_circle);
draw.add(m_Rectangle);
draw.add(m_oval);
jbar.add(draw);
setJMenuBar(jbar);
myc = new MyCanvas();
add(myc);
setVisible(true);
}
class MenultemHandler implements ActionListener{
public void actionPerformed(ActionEvent e){
switch(e.getActionCommand()){
case "直线":
myc.setType(0);myc.repaint();
break;
case "圆":
myc.setType(1);myc.repaint();
break;
case "矩形":
myc.setType(2);
myc.repaint();
break;
case "椭圆":
myc.setType(3);myc.repaint();
break;
}
}
public static void main(String[] args){
new TestDraw();
}
}
}
class MyCanvas extends Canvas{
int shapeType = -1;
public void paint(Graphics g){
switch(shapeType){
case 0:
g.drawLine(50,50, 400,200);
break;
case 1:
g.drawOval(50,50, 200,200);
break;
case 2:
g.drawRect(50,50, 200,200);
break;
case 3:
g.drawOval(50,50, 400,200);
break;
}
}
public void setType(int shapeType){
this.shapeType = shapeType;
}
}
TestDraw.java:15: 错误: 找不到符号
JMenultem m_line = new JMenultem("直线");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:15: 错误: 找不到符号
JMenultem m_line = new JMenultem("直线");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:17: 错误: 找不到符号
JMenuItem m_circle = new JMenultem("圆");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:18: 错误: 找不到符号
JMenultem m_Rectangle = new JMenultem("矩形");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:18: 错误: 找不到符号
JMenultem m_Rectangle = new JMenultem("矩形");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:19: 错误: 找不到符号
JMenultem m_oval = new JMenultem("椭圆");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:19: 错误: 找不到符号
JMenultem m_oval = new JMenultem("椭圆");
^
符号: 类 JMenultem
位置: 类 TestDraw
TestDraw.java:49: 错误: 内部类TestDraw.MenultemHandler中的静态声明非法
public static void main(String[] args){
^
修饰符 'static' 仅允许在常量变量声明中使用
9 个错误