嗨,我有超过10个JRadio按钮,并且它们都有一些共同的属性,所以不是一个接一个地将这些属性写入每个单选按钮,是否有办法为它们设置一次?
我想为所有单选按钮设置的属性是:
radiButtonName.setOpaque(false);
radiButtonName.setContentAreaFilled(false);
radiButtonName.setBorderPainted(false);
radiButtonName.setBorder(null);
我尝试使用UIManager,但它表现得很奇怪,它不支持我需要的所有属性。
我想避免创建额外的类和扩展单选按钮。因为我还想将此技术应用于其他组件以减少编写的代码,这将使代码更短。提前谢谢你:)
答案 0 :(得分:4)
如果你必须做同样的事情,N个时间会尝试编写一个能为你解决问题的方法:)
所以这里的问题是设置10个JRadioButton?您可以创建一个返回JRadio按钮列表(或其他集合/ maps / ...)的方法,如下所示:
private List<JRadioButton> setUpButtons() {
//create list
for(int i = 0; i < NB_BUTTONS; i++) {
//set the properties wanted
}
return myList;
}
请注意,NB_BUTTONS是一个类似的变量:
private final int NB_BUTTONS = 10;
修改值一次比在所有代码中修改它更容易。 使用相同的逻辑,您可以编写一种方法&#39;准备&#39;一个JRadioButton。这取决于你想要做你想做的事情。