下面是一个画线程序,实现功能,运行后在窗体上画几条线,最小化后还原时,能把最后一条线重绘到窗体上。望高手指点,谢谢!
import java.awt.*;
import java.awt.event.*;
public class DrawLine2
{
int orgX;
int orgY;
int endX;
int endY;
public void paint(Graphics g)
{
g.drawLine(orgX,orgY,endX,endY);
}
Frame f=new Frame();
public static void main(String[] args)
{
new DrawLine2().init();
} public void init()
{
f.setSize(300,300);
f.setVisible(true);
f.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
orgX=e.getX();
orgY=e.getY();
}
public void mouseReleased(MouseEvent e)
{
endX=e.getX();
endY=e.getY();
Graphics g=f.getGraphics();
g.setColor(Color.RED);
g.setFont(new Font("隶书",Font.ITALIC|Font.BOLD,30));
g.drawString(new String(orgX+","+orgY),orgX,orgY);
g.drawString(new String(endX+","+endY),endX,endY);
g.drawLine(orgX,orgY,endX,endY);
}
}
);
}
}
import java.awt.*;
import java.awt.event.*;
public class DrawLine2
{
int orgX;
int orgY;
int endX;
int endY;
public void paint(Graphics g)
{
g.drawLine(orgX,orgY,endX,endY);
}
Frame f=new Frame();
public static void main(String[] args)
{
new DrawLine2().init();
} public void init()
{
f.setSize(300,300);
f.setVisible(true);
f.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
orgX=e.getX();
orgY=e.getY();
}
public void mouseReleased(MouseEvent e)
{
endX=e.getX();
endY=e.getY();
Graphics g=f.getGraphics();
g.setColor(Color.RED);
g.setFont(new Font("隶书",Font.ITALIC|Font.BOLD,30));
g.drawString(new String(orgX+","+orgY),orgX,orgY);
g.drawString(new String(endX+","+endY),endX,endY);
g.drawLine(orgX,orgY,endX,endY);
}
}
);
}
}
public void paint(Graphics g) {
super.paint(g);
g.setColor(Color.RED);
g.setFont(new Font("隶书",Font.ITALIC|Font.BOLD,30));
g.drawString(new String(orgX+","+orgY),orgX,orgY);
g.drawString(new String(endX+","+endY),endX,endY);
g.drawLine(orgX,orgY,endX,endY);
}
};