ボタンで線を引こうとしています。
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g2 = (Graphics2D) g;
g2.setColor(Color.BLACK);
g2.setStroke(new BasicStroke(2));
for (int i=0;i<18;i++)
{
g2.draw(new Line2D.Double(2+i*20, 0, 2+i*20, 260));
g2.draw(new Line2D.Double(0, 2+i*20, 360, 2+i*20));
}
g2.setColor(Color.RED);
}
public void drawDiagonallyLineDownLeft()
{
int newXCoord=xDrawCoord+20;
int newYCoord=yDrawCoord+20;
g2.drawLine(xDrawCoord, yDrawCoord, newXCoord, newYCoord);
xDrawCoord=newXCoord;
yDrawCoord=newYCoord;
repaint();
}
drawDiagonallyLineDownLeft メソッドは、Line を描画します。コンストラクターで使用しようとしましたが、正常に動作します。ここにJButtonのリスナーがあります
public void actionPerformed(ActionEvent arg0)
{
panel.drawDiagonallyLineDownLeft();
panel.revalidate();
panel.repaint();
}
それも正常に動作します。方法でコンソールにメッセージを出力しましたが、正常に出力されました。しかし、ボタンを押しても線はありません。どうにかして更新する必要があると思います。私が知っているすべての方法を使用しましたが、それでも機能しません。