我正在探索JavaFX
,我必须说我对缺乏学习材料有点失望。我是菜鸟,JavaFX
但我有一些经验Swing
。如何垂直放置滑块?还有一个问题,我希望Thumb
只能拖动到Tick marks
,而不是在中间空间中,我怎样才能做到这一点?
问问题
5439 次
2 回答
4
如何垂直放置滑块?
slider.setOrientation(Orientation.VERTICAL);
我希望拇指只能拖动到刻度线,而不是在中间空间,我怎样才能做到这一点?
在设置适当的刻度单位、计数和块增量后使用setSnapToTicks 。
slider.setMajorTickUnit(0.25f);
slider.setMinorTickCount(1);
slider.setBlockIncrement(0.125f);
slider.setSnapToTicks(true);
示例应用程序:
import static javafx.application.Application.launch;
import javafx.application.*;
import javafx.event.*;
import javafx.geometry.Orientation;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.stage.Stage;
public class VerticalSliderSample extends Application {
@Override public void start(Stage stage) {
Slider slider = new Slider(0, 1, 0.5);
slider.setShowTickMarks(true);
slider.setShowTickLabels(true);
slider.setMajorTickUnit(0.25f);
slider.setMinorTickCount(1);
slider.setBlockIncrement(0.125f);
slider.setSnapToTicks(true);
slider.setOrientation(Orientation.VERTICAL);
VBox layout = new VBox(10);
layout.setStyle("-fx-background-color: cornsilk; -fx-padding: 10;");
layout.getChildren().setAll(slider);
stage.setScene(new Scene(layout));
stage.show();
}
public static void main(String[] args) { launch(args); }
}
我正在探索 JavaFX,我必须说我对学习材料的运气有点失望。
将有关 Oracle 开发的 JavaFX 文档的电子邮件(建设性)反馈发送至:
jfx-docs-feedback_ww@oracle.com
于 2013-03-04T20:59:34.160 回答
0
随着 Java 8 以及随之而来的 JavaFX 8 和相应的SceneBuilder的到来(在本文发布时,它仍然是带有 SceneBuilder 2.2 的 Java 7 GA),人们应该会更加熟悉使用它。对于那些不了解每个特殊属性并希望实践新 JavaFX 及其 FXML 提供给我们的控制反转原则的人来说,它是一个强大的工具。
这是我的一个项目中的一个示例,用于显示每个节点上最受欢迎的属性
虽然我有时可以理解你,特别是当一些新功能出现时,我会感到沮丧,因为一些更高级别的示例这个 Node 可以做什么并且可能会发现它更容易,但作为一名程序员,你需要学习使用相应的 API。最好在每个 API 文档中都有一部分,例如在 PHP 社区中,您可以在其中将其维护为 wiki。
于 2013-09-19T09:43:36.407 回答