如何使Swing JComponent成为更大的鼠标目标?

时间:2012-03-03 06:53:38

标签: java swing mouseevent

我有一个包含一堆Swing JComponents的JPanel,包括一些可能只有一个或两个像素宽的JSeparator。我想让我的用户拖动项目,但是打一个或两个像素宽的线可能相当困难。有没有办法让这些JSeparators为鼠标点击提供更广泛的“目标”区域?我唯一能想到的就是让我的鼠标处理程序监听JPanel上的点击,如果它得到任何,则运行JSeparator列表,看看它们是否在几个像素内鼠标点击。

应该有用吗?还有更好的方法吗?

1 个答案:

答案 0 :(得分:3)

向组件添加脂肪EmptyBorder

如果它已经有边框,您可以使用当前边框设置复合边框,然后使用空边框,或者更简单,将空边框(和侦听器)添加到包含该组件的面板。后者将更适用于JButton等组件,这些组件的边框会根据状态和焦点而变化。