Java JToolbar和JMenu中大小不同的动作图标
我创建了actions manager,用于创建和获取操作。我正在向tollbar JToolbar和菜单JMenu添加操作。问题在于图标的大小。我需要不同大小的菜单图标,和更大的工具栏 我找到了一个解决方案,在收费站图标创建后调整其大小:Java JToolbar和JMenu中大小不同的动作图标,java,swing,action,jmenu,Java,Swing,Action,Jmenu,我创建了actions manager,用于创建和获取操作。我正在向tollbar JToolbar和菜单JMenu添加操作。问题在于图标的大小。我需要不同大小的菜单图标,和更大的工具栏 我找到了一个解决方案,在收费站图标创建后调整其大小: for (int i=0; i<mainToolbar.getComponents().length; i++) { try { JButton b = (JButton) mainToolbar.getComp
for (int i=0; i<mainToolbar.getComponents().length; i++) {
try {
JButton b = (JButton) mainToolbar.getComponent(i);
ImageIcon ii = (ImageIcon)b.getIcon();
Image im = ii.getImage().getScaledInstance(32, 32, 0);
b.setIcon(new ImageIcon(im));
} catch (ClassCastException ex) {}
}
问题是,我需要更小的图标来显示菜单,所以如果我用16px大小的图标创建动作,然后用这种方式将其调整到32px,图标质量就会崩溃。当我尝试对JMenu方法执行相同操作时,getComponentCount返回0,所以我无法使菜单项JMenuItem调整图标大小
问题是如何从JMenu中获取菜单项JMenuItem,该菜单项是通过操作自动创建的?发布SSCCE/MCVE,在那里您可以使用UIManager.GetIConOptions Pane.errorIcon/informationIcon/warningIcon/questionIcon使用内置图标;如图所示。