一个支持为JRadioButton绑定值的类,继承并扩展JRadioButton

8 篇文章 0 订阅
8 篇文章 0 订阅
import java.awt.Color;
import javax.swing.JRadioButton;
import java.awt.Font;
/**
 * 通过继承JRadioButton来实现为每个radioButton组件指定值
 * @author waitatlee@163.com
 */
public class CustomRadioButton extends JRadioButton{
    private String value = "";
    private Object customObj = null;
    private int fontSize = 18;
    /**
     * 设置radioButton的值
     * @param _value 字符串
     */
    public void setValue(String _value){
        this.value = _value;
    }
    /**
     * 取radioButton的值
     * @return
     */
    public String getValue(){
        return this.value;
    }
    /**
     * 设置与radioButton绑定的自定义对象
     * @param _customObj
     */
    public void setCustomObj(Object _customObj){
        this.customObj = _customObj;
    }
    /**
     * 取与radioButton绑定的自定义对象
     * @return
     */
    public Object getCustomObj(){
        return this.customObj;
    }
    /**
     * 构造方法
     * @param _text 字符串,radioButton后显示的文本
     * @param _value 字符串,radioButton绑定的值
     */
    public CustomRadioButton(String _text,String _value){
        this.setText(_text);
        this.setValue(_value);
        publicSetting();
    }
    /**
     * 构造方法,支持初始化时设定选中状态
     * @param _text 字符串,显示的文本
     * @param _value 字符串,单选框的值
     * @param _selected 布尔型,是否选中
     */
    public CustomRadioButton(String _text,String _value,boolean _selected){
        this.setText(_text);
        this.setValue(_value);
        this.setSelected(_selected);
        publicSetting();
    }
    /**
     * 支持初始化时同时绑定一个自定义对象到radioButton的方法
     * @param _text
     * @param _value
     * @param _obj
     */
    public CustomRadioButton(String _text,String _value,Object _obj){
        this.setText(_text);
        this.setValue(_value);
        this.setCustomObj(_obj);
        this.setSelected(false);
        publicSetting();
    }
    /**
     * 支持同时绑定自定义对象和指定选中状态的构造方法
     * @param _text
     * @param _value
     * @param _obj
     * @param _selected true表示将些radioButton置于选中状态,false表示不选中(默认)
     */
    public CustomRadioButton(String _text,String _value,Object _obj,boolean _selected){
        this.setText(_text);
        this.setValue(_value);
        this.setCustomObj(_obj);
        this.setSelected(_selected);
        publicSetting();
    }
    /**
     * 一些对radioButton的公共设置
     */
    public void publicSetting(){
        //设置边距
        this.setMargin(new java.awt.Insets(10, 35, 0, 0));
        //设置字体样式,粗细,字号
        this.setFont(new Font("宋体",Font.BOLD,fontSize));
        //设置背景颜色
        this.setBackground(Color.WHITE);
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值