gpt4 book ai didi

java - 使用基于网格的背景在网格中排列组件

转载 作者:行者123 更新时间:2023-11-30 07:23:13 24 4
gpt4 key购买 nike

enter image description here

我正在做一个大学项目,但我很难将组件与电路板网格对齐。该板将始终保持 1:1 的宽高比,但尺寸可能会有所不同。这是我尝试过的结果:

enter image description here

为什么百分比与我针对 1200x1200 的实际图片尺寸计算出的百分比不一致?

这是我的布局代码:

public class BoardPanel extends ViewComponent {

public static final int ROWS = 27;
public static final int COLS = 23;
private Board board = new Board();

private BufferedImage background = ResourceLoader.openImage("images/board.jpg");

public BoardPanel() {
this.add(board, "pos 4.5% 4.5%, width 76.5%, height 91%");
}

@Override
public void paintContent(Graphics2D g) {
g.drawImage(background, 0, 0, getHeight(), getHeight(), null);
}

private class Board extends ViewComponent {

public Board() {
setLayout(new GridLayout(ROWS, COLS, 1, 1));

for (int row = 0; row < ROWS; row++)
for (int col = 0; col < COLS; col++)
this.add(new Location(row, col));
}
}
}

最佳答案

作为替代方案,使用 BufferedImage#getSubimage()将图像分成相同的部分,如图所示here .

关于java - 使用基于网格的背景在网格中排列组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12143989/

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