2013-02-06 2 views
1

J'ai un JTable dans lequel 1 colonne contient 3 radiobuttons par celluleComment changer la hauteur d'un RadioButton

mgrdData.getColumnModel().getColumn(intCol).setCellRenderer(new RadioButtonRenderer()); 
RadioButtonEditor butEdit = new RadioButtonEditor(new JCheckBox()); 
mgrdData.getColumnModel().getColumn(intCol).setCellEditor(butEdit); 

Cela fonctionne bien comme les boutons radio sont présentés, et ceux appropriés sont sélectionnés.

Cependant les boutons radio sont trop grands pour être complètement visibles, donc je voudrais réduire la hauteur des boutons radio.

J'ai essayé de changer la taille de police, ainsi que .setSize(), mais cela n'a eu aucun effet sur la hauteur du radiobutton.

Après avoir cherché beaucoup, tout ce que je pouvais trouver était la suivante:

btnVA.putClientProperty("JComponent.sizeVariant","mini"); 
btnUIT.putClientProperty("JComponent.sizeVariant","mini"); 
btnAAN.putClientProperty("JComponent.sizeVariant","mini"); 

où btnVA, btnUIT et btnAAN sont les radiobuttons dans mon RadioButtonRenderer.

Si vous voulez voir plus de code laissez-moi savoir, et je le modifier dans.

Est-ce que je dois ajouter spéciale pour que les radiobuttons appliquent cette ClientProperty?

Répondre

0

J'avais oublié que ce code nécessitait Nimbus LookAndFeel.

Pour les tests plus facile avec différents LookAndFeels i créé une fonction que j'appelle dans le init() de mon Applet:

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. 
    } 
} 

Après avoir appelé cette fonction, les boutons radio ne se comportent, et de changer leur hauteur en conséquence

1

Essayez le setPreferredSize() // assez sûr que c'était la syntaxe.

méthode à la place, voir si cela aide tout. Rappelez-vous quelqu'un dans ma classe ayant ce problème.

+0

Merci pour votre réponse! J'ai trouvé la solution en changeant LookAndFeel à Nimbus. – Hrqls

Questions connexes