最近做一个关于JRadioButton的东西,需要在RadioButton上加图片。
先定义:
private JRadioButton oracle,sqlServer,db2,sybase;
private ButtonGroup buttonGroup;
URL imageUrl = DataUtil.getImgPath(getClass(),"database.png"); //得到图片的路径
String orac = "<html><table cellpadding=0><tr><td><img src='"+imageUrl+"' /></td><td>Oracle</td></tr></html>";
String sqlserver = "<html><table cellpadding=0><tr><td><img src='"+imageUrl+"' /></td><td>Sql Server</td></tr></html>";
String db = "<html><table cellpadding=0><tr><td><img src='"+imageUrl+"' /></td><td>DB2</td></tr></html>";
String sysbase = "<html><table cellpadding=0><tr><td><img src='"+imageUrl+"' /></td><td>Sybase</td></tr></html>";
oracle = new JRadioButton(orac,true);
sqlServer = new JRadioButton(sqlserver);
db2 = new JRadioButton(db);
sybase = new JRadioButton(sysbase);
用上面的方法得到的效果是:
这样就会同时显示单选按钮和 图片。
若是按照 oracle.setIcon(defaultIcon)的方法,会把前面的小圆点遮住。就不方便看到哪一个被选中了。