



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Slider类呈现一个控件来显示和回应一个范围的数值。该控件包括一个轨道和一个可以拖动的滑标,也包含刻度和刻度标记来指示数值。Figure 15-1展示了一个滑动条并指明了其主要元素。Figure 15-1 Elements of a SliderDescription of Figure 15-1 Elements of a Slider创建Slider花点时间看下Example 15-1中的代码,它产生了一个Figure 15-1展示的滑动条。Example 15-1 Creating a SliderSlider slider = new Slider(); slider.setMin(0); slider.setMax(100); slider.setValue(40); slider.setShowTickLabels(true); slider.setShowTickMarks(true); slider.setMajorTickUnit(50); slider.setMinorTickCount(5); slider.setBlockIncrement(10);setMin和setMax方法分布定义了滑动条呈现的最小值和最大值。setValue方法指定了滑动条的当前值,当然必须在最小值和最大值之间。使用该方法来定义应用启动后滑标的位置。两个布尔方法setShowTickMarks和setShowTickLabels定义了滑动条的视觉外观。在Example 15-1中,刻度和数值显示了。另外,大刻度之间的单元距离设置为50,大刻度直接的小刻度数量定义为5。把setSnapToTicks方法设为true来保持滑标总和刻度对其。setBlockIncrement方法定义了用户点击轨道时滑标移动的距离。Example 15-1中该值是10,就是说当用户点击轨道时,滑标会向点击方向移动10单位。在图形应用中使用滑动条现在看一下Figure 15-2。该应用使用了3个滑动条来白哦几图片的属性。每个滑动条调整一个特定的视觉特点:透明度、褐色调、伸缩比例。Figure 15-2 Three SlidersDescription of Figure 15-2 Three Sliders Example 15-2shows the source code of this application.Example 15-2 Slider Sampleimport javafx.application.Application; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.geometry.Insets; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.control.Slider; import javafx.scene.effect.SepiaTone; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.layout.GridPane; import javafx.scene.paint.Color; import javafx.stage.Stage; public class Main extends Application final Slider opacityLevel = new Slider(0, 1, 1); final Slider sepiaTone = new Slider(0, 1, 1); final Slider scaling = new Slider (0.5, 1, 1); final Image image = new Image(getClass().getResourceAsStream( cappuccino.jpg) ); final Label opacityCaption = new Label(Opacity Level:); final Label sepiaCaption = new Label(Sepia Tone:); final Label scalingCaption = new Label(Scaling Factor:); final Label opacityValue = new Label( Double.toString(opacityLevel.getValue(); final Label sepiaValue = new Label( Double.toString(sepiaTone.getValue(); final Label scalingValue = new Label( Double.toString(scaling.getValue(); final static Color textColor = Color.WHITE; final static SepiaTone sepiaEffect = new SepiaTone(); Override public void start(Stage stage) Group root = new Group(); Scene scene = new Scene(root, 600, 400); stage.setScene(scene); stage.setTitle(Slider Sample); scene.setFill(Color.BLACK); GridPane grid = new GridPane(); grid.setPadding(new Insets(10, 10, 10, 10); grid.setVgap(10); grid.setHgap(70); final ImageView cappuccino = new ImageView (image); cappuccino.setEffect(sepiaEffect); GridPane.setConstraints(cappuccino, 0, 0); GridPane.setColumnSpan(cappuccino, 3); grid.getChildren().add(cappuccino); scene.setRoot(grid); opacityCaption.setTextFill(textColor); GridPane.setConstraints(opacityCaption, 0, 1); grid.getChildren().add(opacityCaption); opacityLevel.valueProperty().addListener(new ChangeListener() public void changed(ObservableValue ov, Number old_val, Number new_val) cappuccino.setOpacity(new_val.doubleValue(); opacityValue.setText(String.format(%.2f, new_val); ); GridPane.setConstraints(opacityLevel, 1, 1); grid.getChildren().add(opacityLevel); opacityValue.setTextFill(textColor); GridPane.setConstraints(opacityValue, 2, 1); grid.getChildren().add(opacityValue); sepiaCaption.setTextFill(textColor); GridPane.setConstraints(sepiaCaption, 0, 2); grid.getChildren().add(sepiaCaption); sepiaTone.valueProperty().addListener(new ChangeListener() public void changed(ObservableValue ov, Number old_val, Number new_val) sepiaEffect.setLevel(new_val.doubleValue(); sepiaValue.setText(String.format(%.2f, new_val); ); GridPane.setConstraints(sepiaTone, 1, 2); grid.getChildren().add(sepiaTone); sepiaValue.setTextFill(textColor); GridPane.setConstraints(sepiaValue, 2, 2); grid.getChildren().add(sepiaValue); scalingCaption.setTextFill(textColor); GridPane.setConstraints(scalingCaption, 0, 3); grid.getChildren().add(scalingCaption); scaling.valueProperty().addListener(new ChangeListener() public void changed(ObservableValue ov, Number old_val, Number new_val) cappuccino.setScaleX(new_val.doubleValue(); cappuccino.setScaleY(new_val.doubleValue(); scalingValue.setText(String.format(%.2f, new_val); ); GridPane.setConstraints(scaling, 1, 3); grid.getChildren().add(scaling); scalingValue.setTextFill(textColor); GridPane.setConstraints(scalingValue, 2, 3); grid.getChildren().add(scalingValue); stage.show(); public static void main(String args) launch(args); ImageView对象的不透明度由第一个滑动条改变,叫opacityLevel。SepiaTone效果的改变由sepiaTone滑动条控制。第三个滑动条定义了放大倍数,调用的是s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行服务竞赛试题及答案
- 智能风控系统创新创业项目商业计划书
- 2025内蒙古呼伦贝尔农垦集团有限公司校园招聘50人笔试备考参考答案详解
- 2025内蒙古呼伦贝尔林业集团有限公司招聘工作人员5人笔试备考及答案详解(名校卷)
- 教师招聘之《幼儿教师招聘》考前冲刺测试卷讲解附参考答案详解【巩固】
- 押题宝典教师招聘之《小学教师招聘》通关考试题库含完整答案详解【易错题】
- 2025年教师招聘之《小学教师招聘》综合提升练习题及完整答案详解(有一套)
- 教师招聘之《小学教师招聘》综合练习带答案详解(突破训练)
- 押题宝典教师招聘之《幼儿教师招聘》模考模拟试题附答案详解(轻巧夺冠)
- 2025内蒙古呼伦贝尔旅业旅游集团股份公司招聘5人笔试备考及答案详解(有一套)
- 垃圾的危害教学课件
- GB 26488-2025镁合金压铸安全生产规范
- 2025年园林绿化技术员职业技能考核试题及答案解析
- 2025年军事模型行业研究报告及未来行业发展趋势预测
- 2025安徽宣城市总工会招聘社会化工会工作者13人笔试参考题库附答案解析
- 2025年北师大版新教材数学二年级上册教学计划(含进度表)
- 2025年广东省中考语文试卷真题(含答案)
- 2024中级出版专业资格考试真题带答案分析
- 跨文化商务交际导论 课件 Unit 1 Culture
- 丹佛斯变频器modbus通讯
- (中职)氯碱PVC生产工艺及设备8项目八 PVC生产教学课件
评论
0/150
提交评论