我有一个JTable,其中1列每个单元包含3个radiobuttons
mgrdData.getColumnModel().getColumn(intCol).setCellRenderer(new RadioButtonRenderer());
RadioButtonEditor butEdit = new RadioButtonEditor(new JCheckBox());
mgrdData.getColumnModel().getColumn(intCol).setCellEditor(butEdit);
这样可以正常显示无线电按钮,并选择正确的按钮。
然而,无线电按钮太大而不能完全看见,所以我想减小无线电按钮的高度。
我尝试更改fontsize以及.setSize(),但这对radiobutton的高度没有任何影响。
经过大量搜索,我能找到的是以下内容:
btnVA.putClientProperty("JComponent.sizeVariant","mini");
btnUIT.putClientProperty("JComponent.sizeVariant","mini");
btnAAN.putClientProperty("JComponent.sizeVariant","mini");
其中btnVA,btnUIT和btnAAN是我的RadioButtonRenderer中的radiobuttons。
如果您想查看更多代码,请告诉我,我将在其中进行编辑。
我应该添加什么特别的东西来使radiobuttons应用这个ClientProperty?
答案 0 :(得分:1)
试试吧 setPreferredSize()//非常确定这是语法。
而不是方法,看看是否有帮助。记住我班上有人遇到这个问题。
答案 1 :(得分:0)
我忽略了这段代码需要Nimbus LookAndFeel。
为了便于使用各种LookAndFeels进行测试,我创建了一个函数,我在我的Applet的init()中调用:
private void setLaF()
{
try
{
for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels())
{
if ("Nimbus".equals(info.getName()))
{
UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (Exception e)
{
// If Nimbus is not available, you can set the GUI to another look and feel.
}
}
调用此功能后,无线电按钮会表现出来并相应地改变其高度