我有一个包含滑块的处理草图。生成此滑块的代码如下:
ControlP5 gui;
gui = new ControlP5(this);
gui.addSlider("Tolerance").setPosition(40, height-60).setSize(400, 20).setRange(0.00, 0.10).setValue(0.05).setNumberOfTickMarks(11).setSliderMode(Slider.FLEXIBLE);
gui.getController("Tolerance").getValueLabel().align(ControlP5.RIGHT, ControlP5.TOP_OUTSIDE).setPaddingX(0).setFont(font);
gui.getController("Tolerance").setCaptionLabel("Comparison Tolerance");
gui.getController("Tolerance").getCaptionLabel().align(ControlP5.LEFT, ControlP5.TOP_OUTSIDE).setPaddingX(0).setFont(font);
我遇到的问题0.08
是当滑块同时位于0.08
TickMark
和时显示该值0.09
TickMark
。0.09
是唯一显示不正确的值 - 请参见下图:
滑块实际上是0.09
在上面第三张图中选择了正确的值,当滑块的位置打印到控制台时,但是这个显示错误令人困惑,并不理想。任何帮助将非常感激。
更新:我发现滑块右上角显示的值总是向下舍入。将滑块值输出到控制台时,这些值通常与预期的值略有不同 - 即在中心位置,打印到控制台的实际滑块值是0.0500003
. 通过查看每个滑块位置的真实值,该0.09
位置是唯一一个值低于预期值的位置 - 0.0899996
。因此,这似乎被四舍五入0.08
以显示该值。所以问题仍然存在 - 有没有办法根据0.09
这些信息显示 的正确值?