gpt4 book ai didi

使用 GridLayout 的 Java 相册

转载 作者:行者123 更新时间:2023-11-30 09:42:26 26 4
gpt4 key购买 nike

我想用Java制作简单的相册。要做到这一点,我认为这将是使用网格布局协调图片的最简单方法。

我有图片的缓冲图像,我正在尝试使用以下代码将它们添加到网格布局中,

    BufferedImage a = GUI.createImage(current);
Image b = Toolkit.getDefaultToolkit().createImage(a.getSource());

Icon pic = new ImageIcon(b);
JButton picB = new JButton("Picture 1", pic );
selectB.setVerticalTextPosition(AbstractButton.BOTTOM);
selectB.setHorizontalTextPosition(AbstractButton.CENTER); //aka LEFT, for left-to-right locales
add(picB);

我还尝试使用以下代码缩小我的缓冲图像,

int w = a.getWidth();
int h = a.getHeight();
BufferedImage after = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
AffineTransform at = new AffineTransform();
at.scale(0.6, 0.6);
AffineTransformOp scaleOp = new AffineTransformOp(at, AffineTransformOp.TYPE_BILINEAR);
after = scaleOp.filter(a, after);

不过,我还是把图片缩小了,按钮比图片大,无法整理图片。

您有什么建议或新的解决方案吗?

谢谢。

最佳答案

picB.setInsets(new Insets(1, 1, 1, 1));

BufferedImage 也是一个图像,因此似乎不需要 b

BufferedImage 关联了 Graphics,因此可以按如下方式调整大小:

BufferedImage scaled = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
scaled.getGraphics().drawImage(original, 0, 0, width, height, null);

关于使用 GridLayout 的 Java 相册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8695190/

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