Scrollable
我用实现的接口和覆盖的方法创建了 JPanel getScrollableBlockIncrement
。我将 JPanel 放入 JScrollPane 中。JPanel 包含几个具有相同高度的组件。这个高度就是unitIncrement。现在,当我单击垂直滚动条上的箭头时,视口会按 unitIncrement 移动。但是,当我用鼠标移动旋钮时,视口会移动像素。如何使视口仅按unitIncrement移动?
更新:
旋钮是滚动条上的中间按钮,在轨道上,用于拖动它。如图所示,滚动窗格的工作原理
我希望视口仅以任何方式按 unitIncrement 移动。此外,当我在旋钮上按下鼠标左键并拖动它时。示例行为:Eclipse 中的智能感知。
更新 2:
我尝试
myJScrollPane.getVerticalScrollBar().setUnitIncrement(16);
并没有得到想要的行为。
调试代码时,发现拖拽旋钮时参数unitIncrement被丢弃。
更新 3:
无法使用 JScrollPane 找到合适的解决方案并编写了自定义滚动窗格。