我是java的初学者,在使用a在applet中绘制线条时遇到了问题 按钮click.Please帮我解决这个问题。 p.s.-我不知道挥杆或其他高级部分。 它绘制并发线,也是最大化小程序,只有最后绘制的线是可见的。请帮助解决这个问题。点击另一个点,先前绘制的线条消失。我想制作一个程序,点击一个按钮画线,它们不应该消失。
//program to draw lines
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
/*
<applet code=xy width=200 height=200>
</applet>
*/
public class xy extends Applet implements MouseListener,ActionListener
{ Button b;
int x1, y1,x2,y2;
public void init()
{b=new Button();
add(b);
x1=y1=x2=y2=0;
b.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource()==b) //button click
{
addMouseListener(this);
}}
public void mouseClicked(MouseEvent me)
{
x1=me.getX();
y1=me.getY();
showStatus( "(" + x1 + "," + y1+ ")" );
}
public void mousePressed(MouseEvent me)
{}
public void mouseReleased(MouseEvent me)
{
x2=me.getX();
y2=me.getY();
repaint();
}
public void mouseExited(MouseEvent me)
{}
public void mouseEntered(MouseEvent me)
{}
public void paint(Graphics g)
{
update(g);
}
public void update(Graphics g)
{
g.drawLine( x1,y1,x2,y2);
}}
答案 0 :(得分:1)
您必须自己存储这些行,并在applet的每次重绘上再次绘制所有存储的行。 (如果您想使用JApplet而不是applet,请参阅http://docs.oracle.com/javase/tutorial/uiswing/painting/index.html)