我在看jdk1.4的demo里面的applets\DrawTest的代码时
发现一个问题
在DrawPanel类中,写鼠标事件的时候都要先调用consume()方法,不知何解
源码:
public void mouseReleased(MouseEvent e) {
e.consume();
switch (mode) {
.................
}
repaint();
} public void mouseDragged(MouseEvent e) {
e.consume();
switch (mode) {
.................
}
repaint();
}
发现一个问题
在DrawPanel类中,写鼠标事件的时候都要先调用consume()方法,不知何解
源码:
public void mouseReleased(MouseEvent e) {
e.consume();
switch (mode) {
.................
}
repaint();
} public void mouseDragged(MouseEvent e) {
e.consume();
switch (mode) {
.................
}
repaint();
}
这个问题其实也许不难,楼主,请把e.consume()这一句去掉,看看是什么效果,或许可以猜出来这一句的用途。
e.consume()我觉得没什么用~
我自己写的事件都不用e.consume()的~
所以我去掉了之后,运行效果并没有改变啊~文档中写到
Consumes this event, if this event can be consumed. Only low-level, system events can be consumed 所以我觉得可能是处于安全上的考虑~
这只是我的猜测
可惜没有高人来指点一下