1

我目前正在处理带有JScrollPane(包括 JComponent)、行标题和列标题(也是 JComponents)的 SWING 框架。当鼠标悬停在 JComponent 或这两个标题之一上时,鼠标滚轮会引发滚动。

我想要做的是在鼠标悬停在列标题上时禁用此滚动,但我找不到直接的方法,也找不到 JScrollPane 实例,也找不到 JComponent。有关信息,我查看了这些来源:

如果您有办法做到这一点,请提前感谢您。

4

2 回答 2

3

我认为您需要一个两步解决方案。

  • 要禁用/启用整个组件的滚轮,请setWheelScrollingEnabled() 使用JScrollPane.

  • 要有选择地执行此操作,请addMouseListener()在 JScrollPane 上执行以捕获所有鼠标移动(包括进入和离开),以便您知道指针何时位于标题中。每当这种情况发生变化时,您都可以打开或关闭滚动。

于 2009-11-26T12:28:41.507 回答
0

yourJTable.getTableHeader().setReorderingAllowed(false);

应该可以,试试看。

于 2013-09-11T04:38:02.990 回答