这个程序到底哪里错了啊?急!

来源:百度知道 编辑:UC知道 时间:2024/05/25 08:48:26
import java.awt.*;
import java.awt.geom.*;
import java.awt.event.*;
import javax.swing.*;

public class Picture3 extends JFrame
{
public Picture3()
{
super("Picture");
setSize(425, 150);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
PicturePane sl = new PicturePane();
Container content = getContentPane();
content.add(sl);
setVisible(true);
}

public static void main(String[] arguments)
{
Picture3 frame = new Picture3();
}

}

class PicturePane extends JPanel implements MouseMotionListener,MouseListener
{ int x,y;
int x0,y0;
public void paintComponent(Graphics comp)
{
Graphics comp2D = (Graphics2D)comp;
comp2D.setColor(Color.blue);
BasicStroke bs1=new BasicStroke(2);
comp2D.setSt

Graphics comp2D = (Graphics2D) comp;
....
comp2D.setStroke(bs1);
comp2D.draw(obj);

这里comp2D是Graphics类的实例,而不是Graphics2D的实例,无法调用Graphics2D里面有而Graphics里没有的函数,也就是setStroke()和draw()函数,你把Graphics comp2D = (Graphics2D) comp;改成Graphics2D comp2D = (Graphics2D) comp;就好了

Graphics comp2D
类型不对,,
修改成其他的 比如说
Graphics2D comp2D
就好了

出错在手机