因此,我使用graphics2d在JPanel上繪製網格。擺動繪製網格。奇怪的結果
但是當我調整窗口大小時,它會以奇怪的結果結束。
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
/*
* Draw the background
*/
boolean isWhite = false;
for(int x = 0; x < getSize().width/8; x++){
for(int y = 0; y < getSize().height/8; y++){
if(isWhite){
g2d.setColor(Color.white);
isWhite = false;
}else{
g2d.setColor(Color.LIGHT_GRAY);
isWhite = true;
}
g2d.fillRect(8*x, 8*y, 8, 8);
}
}
g2d.dispose();
}
因此,不是繪製8x8的正方形,而是繪製水平矩形(getSize().width()x8)。
更新
我'繪圖網格,將填補整個的JPanel。所以當窗口調整大小時,網格將會擴大並且工作。但它會畫出奇怪的形狀(有時)。格柵單元具有8×8的大小不變
工作,謝謝。 – Robban64