如何根据方法中按下的按钮更改实例化图标的大小。
所以例如这就是将按钮实例化为
private ExitProgramAction exitProgramAction = new ExitProgramAction("Quit",
Resources.getIcon("exit16"), "Quit HEAT", new Integer(KeyEvent.VK_Q),
KeyStroke.getKeyStroke(KeyEvent.VK_Q, java.awt.Toolkit.getDefaultToolkit().getMenuShortcutKeyMask(), false));
但是我试图在点击时通过下面的方法(我为其创建按钮)更改getIcon()。
protected class ZoomButtonAction extends AbstractAction {
public ZoomButtonAction(String text, String desc)
{
super(text);
putValue(SHORT_DESCRIPTION, desc);
}
public void actionPerformed(ActionEvent e){
}
}
答案 0 :(得分:1)
您可以随时使用以下代码调整图标大小。
protected class ZoomButtonAction extends AbstractAction {
public ZoomButtonAction(String text, String desc)
{
super(text);
putValue(SHORT_DESCRIPTION, desc);
}
public void actionPerformed(ActionEvent e){
ImageIcon icon = (ImageIcon)getValue(Action.SMALL_ICON);
Image newImage = icon.getImage().getScaledInstance(width, height, Image.SCALE_SMOOTH);
putValue(Action.SMALL_ICON, new ImageIcon(newImage));
}
}