我正在尝试制作一个棋盘(8x8 网格)并用背景方块填充它,但它总是显示为一个空方块网格。图像被调用emptysquare.jpg
,但它确实有背景颜色。
如何正确地将图像添加到JButton
我拥有的网格上?
您的棋盘为空的原因是您在将按钮添加到面板JFrame#setVisible
之前调用了该事实。ChessSquare
确保在进行此调用之前已添加所有组件。
也设置Icon
这样的ChessSquare
ImageIcon empty = ...
setIcon(empty);
你需要调用setIcon( empty )
你的构造函数。
在添加方格之前调用是允许但尴尬setVisible( )
的,但如果你这样做,你可能需要重新打包以使布局正确。
调用setLayout( )
必须移到循环之前。