`
guobutter
  • 浏览: 13745 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

使用ButtonGroup实现一组AbstractButton的互斥选择

阅读更多
1、事件驱动
Java的前台开发中可能会需要用到一组AbstractButton,每次只选中其中的一个,其他的去选中。 例如一组JRadioButton,需要每次选中其中的一个。


2、ugly实现

为每一个JRadioButton添加事件(radioButton.addActionListener),并且事件中需要将其他的Button设置为未选中。



3、优雅的实现

使用JDK提供的ButtonGroup。

将所有的JRadioButton都add到Group中。

eg:

ButtonGroup group = new ButtonGroup();

group.add(radioButton);



这两行代码就能替代掉复杂的事件添加,并且能达到相同的效果。



4、参考

JDK中的ButtonGroup。
分享到:
评论

相关推荐

    buttongroup例子-buttongroup.fig

    buttongroup例子-buttongroup.fig buttongroup例子

    QML Button Group

    QML 自定义 Button 增加Button 之间的互斥 实现 悬停 选中变色

    PyQt5 一组QRadioButton全不选的实现方式

    在项目中遇到buttonGroup下的3个radioButton在选中后,不能恢复初始的全不选状态。经过CSDN论坛陈年椰子的指点,实现了该功能。 特做了演示工程,实际测试可用。贡献给同样有困惑的同学。 本工程的模块版本如下: ...

    buttongroup例子-buttongroup.m

    buttongroup例子-buttongroup.m buttongroup例子

    ExtJsButtonGroup

    ExtJs,ButtonGroup,ExtJs按钮组示例参考

    关于matlabradiobutton的用法讲解纠正一个错误用法-radiobutton.rar

    这里就可以使用buttongroup中提供的SelectionChangeFcn函数,这样,你就始终是有一个是选择上的,而且不会出错。图中的下面一幅 附上m文件,方便下载,压缩成了一个包,为方便没有m币的人查看,下面写出了...

    Java实现窗体右键菜单.rar

    Java实现窗体右键菜单,简约易操作的窗体菜单,这是一个相当易懂的制作实例。  super( "右键弹出菜单" ); //调用父类构造函数  ChangeColorAction action = new ChangeColorAction(); //菜单项事件处理  ...

    matlab开发-ButtonGroupforHG2

    matlab开发-ButtonGroupforHG2。使用GUI布局工具箱管理单选按钮或切换按钮的容器对象-用于2014b以后的版本

    Java的小技巧(很小的)

    2,设置一组单选RadioButton 先声明: ButtonGroup jButtonGroup = new ButtonGroup(); JRadioButton jRadioButton1 = new JRadioButton(); JRadioButton jRadioButton2 = new JRadioButton(); JRadioButton ...

    Android控件系列之RadioButton与RadioGroup使用方法

    通过点击无法变为未选中 单个CheckBox在选中后,通过点击可以变为未选中 2、一组RadioButton,只能同时选中一个 一组CheckBox,能同时选中多个 3、RadioButton在大部分UI框架中默认都以圆形表示 CheckBox在大部分UI...

    HG2 的 ButtonGroup:使用 GUI 布局工具箱管理单选按钮或切换按钮的容器对象 - 2014b 起-matlab开发

    ButtonGroup 控件需要 Ben Tordoff 和 David 的 GUI 布局工具箱桑普森可在: http://www.mathworks.com/matlabcentral/fileexchange/47982-gui-layout-toolbox 此提交中的控件应放置在 GUI 布局工具箱中的 +uix ...

    Ext Js权威指南(.zip.001

    9.8.2 在单页面应用中使用卡片布局实现“页面”切换 / 496 9.9 本章小结 / 498 第10章 重构后的grid / 500 10.1 grid的基类及其构成 / 500 10.1.1 概述 / 500 10.1.2 表格面板的运行流程:ext.panel.table / ...

    微信小程序中如何使用setData修改数组或对象中的某一参数

    这些值在微信小程序中都需要使用一个名为setData的方法,而这个方法是通过键值对的形式对数据进行修改,setData({ 参数名: 值 });  既然知道是以键值对的方式进行传参,那么我们在修改数组和对象的时候就直接将要...

    图书管理系统源文件

    import javax.swing.AbstractButton; import javax.swing.ButtonGroup; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing....

    java写的滚动字幕GUI编程

    // 创建一个选按钮组 sexRadioButtonGroup.add(bigfont);// 将单选按钮对象添加到按钮组中 sexRadioButtonGroup.add(smallfont);// 将单选按钮对象添加到按钮组中 //Enumeration<AbstractButton> elements ...

    grouped_buttons:一组Flutter小部件,使对复选框和单选按钮进行分组变得更加容易!

    grouped_buttons 一组Flutter小部件,使对复选框和单选按钮进行分组变得更加容易!正在安装将以下内容添加到您的pubspec.yaml文件中: dependencies: grouped_buttons: ^1.0.4简单用法创建一个基本的CheckboxGroup ...

    ButtonGroup 对象:用于管理具有 GUI 布局工具箱功能的单选按钮或切换按钮的容器对象-matlab开发

    ButtonGroup 控件需要 Ben Tordoff 和 David 的 GUI 布局工具箱桑普森可在: http://www.mathworks.com/matlabcentral/fileexchange/27758-gui-layout-toolbox 此提交中的控件应放置在 GUI 布局工具箱中的 +uiextras...

    GUIs_FEX.zip

    如何使用GUI控制另一个图中的轴?(见GUI_29, 30) 什么是回调字符串?(见GUI_30) 当其中一个图片关闭时,其它所有图片都自动关闭?(见GUI_24, 29, 30, 41) 在一个复杂的GUI中如何使得多个uicontrol进行交互...

    APP页面框架

    主要实现了Fragment与buttonGroup结合,做成5个页面相互切换的模式。单个页面内容可根据实际添加,即是app实现的页面框架

    javaSE代码实例

    第一篇 起步篇 第1章 初识Java 3 1.1 Java简介 3 1.1.1 Java的不同平台 3 1.1.2 Java发展的历程 3 1.1.3 Java的特点 4 1.2 安装开发工具包 5 1.2.1 下载JDK 5 1.2.2 安装JDK 6 1.2.3 安装后Java...

Global site tag (gtag.js) - Google Analytics