frame缩小或放大后怎样保存原来的图
import java.awt.*; import java.awt.event.*;
public class Hua extends Frame
{
Panel p;
public Hua()
{
Frame f=new Frame("");
p=new Panel();
f.add(p);
f.setSize(200,200);
f.setVisible(true);
p.addMouseListener(new MouseAdapter()
{
int x,y;
public void mousePressed(MouseEvent e)
{
x=e.getX();
y=e.getY();
}
public void mouseReleased(MouseEvent e)
{
Graphics g=p.getGraphics();
g.setFont(new Font(null,Font.ITALIC,30));
g.drawString(x+","+y,x,y);
g.drawString(e.getX()+","+e.getY(),e.getX(),e.getY());
g.setColor (Color.PINK);
g.drawLine(x,y,e.getX(),e.getY());
}
});
}
public static void main(String[] args)
{
new Hua();
}
}
我只弄出这个来,具体的把缩小或放大保存原来的图的代码怎么弄就不知道了,请帮助
----------------解决方案--------------------------------------------------------
你怎么 会在事件里面画东西呢
这样非常不好,你应该在paint里面画
还有,现在SWING都出来这么多年了,你怎么 还是在用AWT里面的组件呢
应该用JFrame,JPanel这些带J字头的
----------------解决方案--------------------------------------------------------
回复:(千里冰封)你怎么 会在事件里面画东西呢这样非...
刚学java啊,JFame没学过,你能不能编一段代码让我看看,缩小或放大后画面不消失,我是真的想知道啊 ----------------解决方案--------------------------------------------------------
什么画面?
你画的东西不消失,还是背景不消失?
----------------解决方案--------------------------------------------------------
回复:(千里冰封)什么画面?你画的东西不消失,还是背...
我那代码是自己画直线 ----------------解决方案--------------------------------------------------------
你把画线的代码放到paint方法里面就不会消失了
----------------解决方案--------------------------------------------------------
也可以把你画的东西保存在一个变量中(Vctor或者ArrayList),然后再用循环把里面所有的东西重新画出来。
----------------解决方案--------------------------------------------------------