javafX初探(单选按钮)
2015-01-28 14:52
225 查看
本章介绍单选按钮控件,单选按钮是ToggleButton的特殊实现。一个单选按钮可以被选择也可以不被选择。一般情况单选按钮放在一个组里使用,并且此组中的单选按钮在某一时刻只能存在一个被选中。下面的图片展示了3个单选按钮:
我们可以通过setSelected方法来设置选中某个单选按钮。
因为RadioButton也是扩展子Labeled,所以我们也可以为他添加图片内容如下:
运行代码,显示如下:
现在我们就可以,通过选择不同的单选按钮来展示不同的图片。
我们通过下面的方法,来获得焦点:
注意:经过的实验的结果是。就算使用requestFocus方法之后,焦点还是在第一个按钮上。不明白为什么,如果谁知道,请赐教。
创建单选按钮
使用下面代码创建单选按钮//A radio button with an empty string for its label RadioButton rb1 = new RadioButton(); //Setting a text label rb1.setText("Home"); //A radio button with the specified label RadioButton rb2 = new RadioButton("Calendar");
我们可以通过setSelected方法来设置选中某个单选按钮。
因为RadioButton也是扩展子Labeled,所以我们也可以为他添加图片内容如下:
Image image = new Image(getClass().getResourceAsStream("ok.jpg")); RadioButton rb = new RadioButton("Agree"); rb.setGraphic(new ImageView(image));
添加单选按钮到组
代码如下:final ToggleGroup group = new ToggleGroup(); RadioButton rb1 = new RadioButton("Home"); rb1.setToggleGroup(group); rb1.setSelected(true); RadioButton rb2 = new RadioButton("Calendar"); rb2.setToggleGroup(group); RadioButton rb3 = new RadioButton("Contacts"); rb3.setToggleGroup(group);
运行代码,显示如下:
处理事件:
代码如下:ImageView image = new ImageView(); rb1.setUserData("Home") rb2.setUserData("Calendar"); rb3.setUserData("Contacts"); final ToggleGroup group = new ToggleGroup(); group.selectedToggleProperty().addListener( (ObservableValue<? extends Toggle> ov, Toggle old_toggle, Toggle new_toggle) -> { if (group.getSelectedToggle() != null) { final Image image = new Image( getClass().getResourceAsStream( group.getSelectedToggle().getUserData().toString() + ".jpg")); icon.setImage(image); } });
现在我们就可以,通过选择不同的单选按钮来展示不同的图片。
获取单选按钮的焦点
单选按钮的焦点默认是在第一个单选按钮上的,如果你使用setSelected方法设置第二个单选按钮选中的话。那么焦点依旧在第一个按钮上,如下图所示:我们通过下面的方法,来获得焦点:
rb2.setSelected(true); rb2.requestFocus();
注意:经过的实验的结果是。就算使用requestFocus方法之后,焦点还是在第一个按钮上。不明白为什么,如果谁知道,请赐教。
相关文章推荐
- javafX初探(按钮)
- javafX初探(开关按钮)
- 在DataGrid中添加Radio(单选按钮)列
- WEB前端 -- 单选按钮、下拉、隐藏、表单
- php 实现其中的单选按钮控制文本框的显示与隐藏
- JSP 隐藏域 单选按钮 复选按钮
- 选择屏幕——按钮、单选复选框
- webdriver与浏览器_操作页面元素—单选按钮/多选按钮
- jquery单选按钮组选中
- Android之单选按钮对话框
- Java知多少(87)选择框和单选按钮
- 安卓编程——单选框RadioGroup,单选按钮RadioButton的使用
- Struts2单选按钮标签s:radio的使用及其设置默认值
- 自定义多行多列设置单选按钮
- cocos2d 简单的单选按钮
- 2复选框和单选按钮
- JSP单选按钮验证、下拉框验证、复选框验证实现代码
- HTML基础 form-input-radio创建一个单选按钮(不漂亮的)
- JavaFx初探
- Android的单选按钮