【发布时间】:2017-08-05 13:39:38
【问题描述】:
我创建了一个应用来计算多图像的大小,以便在 Codename One 设计器中使用它们。
正如您在下面的屏幕截图中看到的,我的应用程序有一个滑块,我得到了它的宽度(以毫米为单位)。问题是所选宽度的值不正确。我在两台 Android 设备上测试了该应用,测得的长度与该应用报告的长度不同。
你可以看到full source code,但是相关代码如下:
Label value = new Label("Move the cursor on the slider...");
Style thumbStyle = new Style();
thumbStyle.setFont(Font.createSystemFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD, Font.SIZE_LARGE), true);
Slider slider = new Slider();
slider.setMaxValue(1000);
slider.setMinValue(0);
slider.setProgress(20); // Set the starting value
slider.setThumbImage(FontImage.create("|", thumbStyle));
slider.setEditable(true); // to it works as a slider instead of a progress bar
slider.addActionListener(e -> {
Integer valueSelected = slider.getProgress();
Integer sliderWidth = slider.getWidth();
Double inch = sliderWidth.doubleValue() / (slider.getMaxValue() - slider.getMinValue()) * valueSelected / 100.0;
Integer millimeters = Double.valueOf(inch * 25.4).intValue();
value.setText("Value selected: " + millimeters.toString() + " mm");
});
非常感谢您的帮助
【问题讨论】:
标签: codenameone