2010-03-02 27 views
0

我有这个程序,它在JFrame中绘制条形图。当我点击它们时,条形图的条形图会改变颜色。所以我的问题是最好的办法来解决这个问题?暴力方式,即。计算鼠标点击,看看它是否落在酒吧的范围内,或者扩展BufferedImage类并让它实现mouselistener?因为如果我要创建一个扩展jpanel并覆盖它的paintcomponent方法的类,它肯定不会有效运行。条形图的条形图也会动画,因为数值会被输入到程序中,并且图形会始终更新。如何让绘制的对象(g.draw(...))响应鼠标事件?

回答

1

我会亲自去“倾听点击整个组件并确定点击哪个栏”。这不应该很难做到 - 只需要划分出哪个酒吧,然后进行边界检查,以确定特定的酒吧是否足够长,以便对该点进行绘制。

介绍“每个酒吧一个控制”感觉就像获得布局等方面的麻烦一样。我确信它可以完成 - 而且我确信具有更多GUI经验的人与我的布局相比,布局更少 - 但我强烈地怀疑它会有更多的工作。

+0

雅我想,只是想看看是否有其他方式,更好的方式是。谢谢。 – vamsi 2010-03-02 07:35:19

相关问题