我想知道是否可以知道滑块在滑块的哪一侧移动。我必须实现基于滑块的缩放功能,我可以放大,但不能缩小。
if (!zoomSlider.getValueIsAdjusting()) {
double minY = model.getMinY();
double maxY = model.getMaxY();
double distanceY = maxY - minY;
double posY = minY + distanceY / 2.0;
if(?) {
distanceY /= zoomSlider.getValue();
} else {
distanceY *= zoomSlider.getValue();
}
minY = posY - distanceY / 2.0;
maxY = posY + distanceY / 2.0;
changeMaxY(maxY);
changeMinY(minY);
}
谢谢。
答案 0 :(得分:0)
我想我知道你想要什么。一个滑块,拇指在中间,当向左或向右滑动时,它会一直缩放,直到你松开鼠标。
如果是这样,你应该为你的滑块设置一个最大值,比如9.然后,在你的循环中(我猜你是在循环中,否则你创建了一个mouserelease事件处理程序),你总是将值设置为5。滑动,你取当前值并从中减去5。现在减法的结果应该代表缩放的速度。 0表示没有缩放。一切积极意味着放大,一切消极意味着缩小。
答案 1 :(得分:0)
当我向右移动时,我想乘以1,2,3或4,当我向左移动时,除以1,2,3或4。
跟踪“上一个”滑块值,以便将其与“当前”滑块值进行比较。当这个值增加你的乘法时,当它减小时你就会分开。