基本上,我想显示运动时 slider handle 指向的当前值(通过鼠标或键盘)。我可以通过添加新的 ChangeListener 和重写 stateChanged 方法轻松获取当前值。但我似乎无法获取 handle 的当前位置。
我可以硬着头皮在固定位置创建一个标签并不断更新它,但我想在 handle 上方(或下方)显示值。
最佳答案
不是一个好的或非常灵活的解决方案,但也许您可以实现自己的 SliderUI
。例如。使用已经定义的BasicUI
,您可以访问包含您需要的值的thumbRect
字段。
slider.setUI(new BasicSliderUI(slider) {
public void paintThumb(Graphics g) {
super.paintThumb(g);
g.setColor(Color.black);
g.drawString(Integer.toString(slider.getValue()), thumbRect.x, thumbRect.y + thumbRect.height);
}
});
关于java - 访问 Swing JSlider 的拇指/ handle /旋钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6347290/