你的类继承Panel或JPanel了吧?
1 xxx.getGraphics().drawOval(0,0,10);
2 xxx.addMouseListener(new MouseAdapter(){public void mouseClicked(MouseEvent e){...}});其中xxx为继承Panel或JPanel类的实例
1 xxx.getGraphics().drawOval(0,0,10);
2 xxx.addMouseListener(new MouseAdapter(){public void mouseClicked(MouseEvent e){...}});其中xxx为继承Panel或JPanel类的实例
解决方案 »
- String转换为InputStream
- hql 查询不重复语句出错
- jdk放在U盘里可以用么?
- 请教正则式,搜索一个目录及其子目录中JAVA及JSP文件的包引用的package
- lucene做成像百度那样的搜索引擎该如何下手???
- 初学java;请问:我用eclipse,已经安装了java3d的包,但引用java3d的程序却是叉,不知是什么问题,请高手帮忙,谢谢!!
- 如何使用HASHMAP读取对象属性
- 请教,jPanel中添加鼠标监听问题??
- 菜鸟学java 关于javamail的问题 在线等候
- 提问:用Corba作开发都需要准备什么。
- 为什么我下载了JDK安装后却在DOS下无法编译?听说要设置环境变量?那怎样设置呢?谢谢
- 怎樣將Big5碼的文本文件轉化為GB2312的??
1 xxx.getGraphics().drawOval(0,0,10);
2 xxx.addMouseListener(new MouseAdapter(){public void mouseClicked(MouseEvent e){...}});其中xxx为继承Panel或JPanel类的实例
而是class SketchView extends JComponent implements Observer
这个文件的唯一的类SketchView.java
在它之下还声明了一个类
class MouseHandler extends MouseInputAdapter
里面有public void mousePressed(MouseEvent e)方法来接收鼠标的单击
事件,并在这个方法里判断是单击的那个按钮,并做出反应。
不知道与你讲的是否一个作用。
这样所有东西都将重画,包括已画好的东西。
包括已画好的,那在repaint()方法中是不是只画出要改变的地方就行呢
已画好的就不用再画一遍了。
paint(Graphics g)方法,如下所示:
public void update(Graphics g)
{
paint(g);
}
这样的话只要在paint()方法中画出改变的地方就可以了。
因为repaint()其实是启动一个新的线程来调用update(),然后update()再调用paint()函数,而默认情况下调用update()将清除整个屏幕区域然后让paint()来重绘,所以只要直接调用paint()就可以不清除屏幕上以前画的图形了。