2014-02-18 161 views
0

我需要減小沒有文本的JCheckBox項目的大小。到目前爲止,我試圖覆蓋方法getPreferredSize()getMaximumSize()。同時設置字體大小或JCheckBox本身的大小不會引起任何更改。有沒有辦法做到這一點?如何減小JCheckBox圖標的大小?

回答

2

如果您正在討論添加到JCheckBox的圖標,那麼最好是從原始圖像調整大小的新圖像創建一個新圖標。您可以通過調用yourImage.getScaledInstance(...);方法來完成此操作。一旦你得到新的圖像,創建一個new ImageIcon(newImage)並與您的JCheckBox一起使用。

例如

Image oldImage = oldIcon.getImage(); 
Image newImage = oldImage.getScaledInstance(newWidth, newHeight, 
     Image.SCALE_DEFAULT); 
Icon newIcon = new ImageIcon(newImage); 
checkBox.setIcon(newIcon); 
0

getPreferredSizegetMaximumSize只返回分配給分別preferredSizemaximumSize,值,對於JCheckBox對象。如果你想改變這些值,使用setPreferredSizesetMaximumSize代替:

jCheckBox.setPreferredSize(new Dimension(100, 300)); 

和/或:

jCheckBox.setMaximumSize(new Dimension(200, 600));