java - JScrollPane:禁用拖动滚动

标签 java swing jscrollpane drag

我正在使用一些 JGraphX 组件,但这个问题可以应用于 java 的一般用途。

我在 JScrollPane 中有一个组件。我遇到的问题是,我能够通过“抓取” View 并像谷歌地图一样移动它来平移 View 。但如果光标离开视口(viewport),滚动方向就会改变。我做了一些研究并发现了导致问题的问题。可以在本页的下半部分找到它,其中开始讨论滚动 Pane 的工作原理。

http://download.oracle.com/javase/tutorial/uiswing/components/scrollpane.html

Move the cursor over the image and press the cursor. Continuing to press the cursor, drag to a point outside the image and pause. The visible area of the image moves toward the cursor. This scroll-by-dragging functionality is enabled by the scroll pane, and with the JComponent API, but it is implemented by the custom component that displays the image.

它有一个小演示,因此您可以看到它是如何工作的,并且代码可供下载。

因此,默认情况下,滚动 Pane 具有可拖动的滚动功能,但实际上与我需要的滚动方式相反。我正在使用的 JGraphX 库扩展了大多数用于以某种方式使自身受益的类,但基本思想仍然适用。我真的只需要知道禁用此功能的最简单方法。 Yhe 页面显示它是由滚动 Pane 和 JComponent API 启用的,但实际上启用了什么?

最佳答案

不确定,但我认为你需要使用:

component.setAutoscrolls( false );

关于java - JScrollPane:禁用拖动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7997223/

相关文章:

java - 我的 JScrollPane 滚动到我的 JTable 的倒数第二行,而不是最后一行

java - 如何使用hibernate和可选参数进行查询?

java - 仅删除文本区域中的选定文本

java - 最大化 JFrame on action?

java - JScrollPane 不可见

java - JScrollPane - 平滑滚动

Java 优化了读/写共享资源/内存位置而无需 Atomic API,例如原子整数

java - 如何将 java 对象传递给 HTTP Post 参数

java - PDF、barcode4j用java压缩

java - 确定谁调用stateChanged