java - 如何编辑可更改的图标比例?

标签 java swing icons scaling

据我所知,缩放图标是向按钮本身缩放。 像这样

final JButton satu = new JButton((new ImageIcon(((new ImageIcon("images/1.png").getImage().getScaledInstance(50,50,java.awt.Image.SCALE_SMOOTH))))));

但是当我修改为可更改图标时 我不知道如何缩放它

有人知道如何解决吗?

这是代码

final ImageIcon iconsatu = new ImageIcon("images/1.png");
final ImageIcon iconSatu = new ImageIcon("images/r1.png");

satu.addActionListener(new ActionListener() {
    private boolean flag = true;
    public void actionPerformed(ActionEvent e) {
        satu.setIcon(flag?iconsatu:iconSatu);
        flag=!flag;
    }
});

最佳答案

我不明白这个问题。正如您在第一行代码中演示的那样,您知道如何缩放图像。

那么为什么不能简单地创建两个缩放图标:

Icon icon1 = new ImageIcon(((new ImageIcon("images/1.png").getImage().getScaledInstance(...))));
Icon icon2 = new ImageIcon(((new ImageIcon("images/2.png").getImage().getScaledInstance(...))));

虽然代码太复杂了。您可以使用以下内容来简化它:

BufferedImage image1 = ImageIO.read( new File("images/1.png") );
Icon icon1 = new ImageIcon( image1.getScaledInstance(...) );

关于java - 如何编辑可更改的图标比例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34471208/

相关文章:

java - 在hadoop中用相同的键减去两个数字

java - Thread.sleep() 的效率

java - 第二个 JOptionPane 位于所有程序后面

Android:当应用程序在后台运行时,标题上的图标错误

c++ - 添加图标资源而不更改EXE图标?

java - 使用 Java (Swing) 在 JPanel/JFrame 中播放 .wav 声音文件

java - 如何在eclipse模板中插入方法注释

java - 有效实现此 Java MouseListener 逻辑

java - JTable/setDefaultRenderer 多选行

html - 带有叠加层的社交媒体图标