在一个panel里面放上很多panel的时候,外围的监听不到鼠标事件!
请问如果解决?
请问如果解决?
解决方案 »
- 有谁知道JAVA的刻度尺类有吗?或者把JSlider的小滑块去掉也行。请求高人出现。
- 所有子类对象皆是父类对象. 我觉得不对.
- 关于Applet实现问题!
- 复数类继续:用了自定义的double型数字格式化函数,怎么就会抛出异常呢?????
- 谁会在linux下安装java?
- 网络足球游戏与篮球游戏哪个玩的更多?
- 看think in java 中提到了callback(回调)技巧,有没有具体的说明和例子?
- 关于Java虚拟机的问题!!! 紧急!!!!!!
- 获取现在时间的是什么方法?
- 在web页面中实现树型结构
- 在JTable中每列文字如何居中
- 100分求解决方案:用POI的HSSF读取excel的问题:数据条数(5000)多的时候,会产生outofmemory错误~
Component c = e.getComponent();
if (IsInnerPanel(c)) {
// throw out event
e.translatePoint(c.getX(), c.getY());
}
else if (IsOutterPanel(c)) {
// do something u want...
}
}// ... other methods
}这里,如果判断出是内层PANEL捕获了事件(无论多深),就向上一层抛出此事件,c.getX() and c.getY(),是给出内层控件当前鼠标的坐标相对于外层控件的鼠标控件位置,这里仅仅假设了两层,事实上可以有无数层,且判断哪一层处理的逻辑也是可以相应作出调整。
@.@||~
其次,我曾经有过这样的经历,确实会降低鼠标的响应速度,但是我的系统层层嵌套了3层PANEL,而事件发生在最外层,且每一层都包含很多的PANEL(总共大概6、70个),鼠标的响应事件还没有太离谱,你可以测试一下性能瓶颈可能出现的点,再确定解决方案
@.@||~
内层的每个Panel都看作一个对象,该对象内除了属性外增加一个监听方法监听鼠标。