Jpanelのどこかをクリックできる関数を作成し、マウスがクリックした位置に図形を描画します。私が抱えている問題は、新しい位置をクリックすると、図形が移動して再描画されることです。前の形状を画面に「焼き付け」てそのままにしておきたいのですが。データを関連付ける必要はありません。形状の画像に、毎回以前の場所を表示したいだけです。私はさまざまなことを試しましたが、成功しませんでした。これが私が意味することです:
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
g2.setColor(Color.BLUE);
g2.fillRect(n, m, 32, 32); //I want each one of these shapes to be new, not
//moving, but redrawn
////////////////////////////////////////////////
//This is just drawing a grid and doing other things(irrelevant)
g2.fill(new Ellipse2D.Double(x, y, 32, 32));
for (int i = 0; i < 500; i += 32) {
g2.drawRect(i, j, 32, 32);
for (int j = 0; j < 500; j += 32) {
g2.drawRect(i, j, 32, 32);
}
}
if (paintColBlock){
System.out.println("Drawing Block at " + n +"," + m);
paintColBlock = false;
}
/////////////////////////////////////////////////////////////////////
}