我想创建一个单选按钮,其组件多于默认的JRadioButton。我想知道最好的方法是什么,我应该将JRadioButton子类化添加我的额外组件,还是更好地继承JPanel并添加单选按钮的行为,如下所示。
---------JPanel---------------
- Titel (Label) -
- RadioButton (JRadioButton) -
- Description (label) -
------------------------------
整个面板应该是可调焦的,并且应该在点击或有焦点时提供反馈。 谢谢你的帮助。
答案 0 :(得分:1)
以上都不是。
除非您真正需要扩展功能,否则不要扩展组件,尤其不仅仅是为了装饰。
不要将containment hierarchy与类层次结构混淆。
除非您打算提供自己的focus subsystem,否则不要打败现有的focus listener。
如果要在单选按钮的焦点发生变化时更改面板的外观,请在按钮附带的{{3}}中进行更改。不透明面板的背景颜色是绑定属性,因此setBackground()
就足够了。