想在applet里从(0,0)到(x,y)显示一条直线,x,y分别是鼠标每一刻的位置,我画出来的是很多直线,要求是在每一刻都只能有一条直线,而且它随鼠标位置的变化而变化,伸缩自如,请高手指点一下
解决方案 »
- 小弟第一次使用jquery+ajax+json+struts2,求教给位大虾....
- 使用InputStream从控制台获取用户输入的数据信息
- 如何提取数据包的源端口目的端口以及区分数据包使用的协议(用JAVA语言实现)
- 请问 >>>和>>有什么区别?2
- 文件传输的问题?
- 新手问题!!!到哪去找 JAVA 的编译器
- 在线高分求助:如何将下面的应用程序(Application)转化为小应用程序(Applet)???成功者马上得分!!!
- 各位高手知道在JAVA中如何用一个名称创建一个对象实例,并调用其方法,注意:在编写代码时并不知要创建的对象的类名,也并不知方法名
- 时间问题
- 新手疑问!!!!
- 有关于JTree的问题,希望各位大大给个指点
- RMI的服务端怎样获取访问端的IP地址?
* Test3.java
*
* Created on 2006年8月22日, 上午11:45
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author lbf
*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Test3 extends JApplet{
private int x,y;
/** Creates a new instance of Test3 */
public Test3() {
this.addMouseMotionListener(new MouseMotionAdapter(){
public void mouseDragged(MouseEvent me){
x=me.getX();
y=me.getY();
repaint();
}
});
}
public void paint(Graphics g){
super.paint(g);
g.drawLine(0,0,x,y);
}
}
这句就是擦掉以前画的线段的方法
不断擦除就可以了
写一个paint()方法
然后repaint()就可以了
我有一个swing的画图板程序
你可以参考
.............................
private void formMouseDragged(java.awt.event.MouseEvent evt) {
.......................................
repaint(); //重新绘制屏幕
}
......................public void paint(Graphics g) {
super.paint(g);
Graphics2D g2d = (Graphics2D) g;
for (int i =0; i < shapeList.size(); i++) {
s = shapeList.get(i);
s.drawShape(g2d);
}//画出图形链表中的每个图形
}}就OK了~
呵呵~