gpt4 book ai didi

java - 我正在尝试调整 ImageIcon 的大小,但它的一部分超出了屏幕...我该如何解决这个问题?

转载 作者:行者123 更新时间:2023-12-02 07:05:52 25 4
gpt4 key购买 nike

所以...我正在尝试调整笑脸图像的大小:
enter image description here
它在框架上显示正常,但后来我意识到它的一部分没有显示。我的意思是它没有调整大小,只是被切断了。然后我添加了一些调整大小的代码(这些代码遍布各处,并且在每个网站上几乎都是相同的),但事实证明它不起作用。

换句话说,我明白了。 enter image description here如果有的话,这里有什么问题吗?谢谢!

public class RockPaperScissors {

//global resources
final static Dimension SCREEN_SIZE = Toolkit.getDefaultToolkit().getScreenSize();
final static int WIDTH = (int) SCREEN_SIZE.getWidth();
final static int HEIGHT = (int) SCREEN_SIZE.getHeight();
final static ImageIcon RPS_LOGO = new ImageIcon("images/rps.png");


/**
* @param args
*/
public RockPaperScissors() {

ImageIcon icon = RPS_LOGO;
Image img = icon.getImage();
BufferedImage bi = new BufferedImage(img.getWidth(null), img.getHeight(null), BufferedImage.TYPE_INT_ARGB);
Graphics g = bi.createGraphics();
g.drawImage(img, 0, 0, HEIGHT, HEIGHT, null);
ImageIcon newIcon = new ImageIcon(bi);
JLabel RPS_LOGO_LABEL = new JLabel(newIcon);

JFrame window = new JFrame();
window.setName("Rock, Paper, Scissors!");
window.setSize(WIDTH, HEIGHT);
window.setVisible(true);
window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container frameContents = window.getContentPane();
frameContents.setLayout(null);
frameContents.add(RPS_LOGO_LABEL);
Rectangle logo = new Rectangle(0,0,HEIGHT,HEIGHT);
RPS_LOGO_LABEL.setBounds(logo);

}

public static void main(String args[]) {
new RockPaperScissors();
}

}

最佳答案

使用getScaledInstance() :

Image scaled = image.getScaledInstance(width, height, 5);

此代码应缩放图像以适合整个框架。

关于java - 我正在尝试调整 ImageIcon 的大小,但它的一部分超出了屏幕...我该如何解决这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16123809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com