java swing中drawline方法,界面最小化之后线消失的问题

我通过Graphics g=getGraphics(); g.setColor(Color.RED); g.drawLine(0,0,100,100);
画线,在点击某个按钮的时候在面板之中动态的画线,但是这样界面最小化之后,刚才画的线就不见了,应该怎么办呢?

你的drawLine应该是在按钮响应函数里面写的吧。这时候绘出的图像会在系统重绘时抹去。比如你最小化以后再还原,系统窗口会自动重绘。系统会首先清空component上的所有已经画的东西,这样你draw的Line也自然没有了,然后系统会调用这个component的paint(),所以通常的办法是在按钮处理函数里保存这个line的起点和终点到这个component的一个域中,然后复写paint(),让每次paint的时候读取这个line,并且绘出它。
我已经很久都没用过swing了,不知道说的对不对