私は三目並べ用の単純な JPanel を持っており、線を描画しています...そのため、クラス TTT は JPanel を拡張し、内部に GameLogic オブジェクトを保持します。
すべて問題ありません。アプリケーションは TTT を追加したメインの JFrame であり、すべて問題ありません。
しかし、新しいゲームを再開したいとき
は、基本的に行う TTT で「再起動」を呼び出します: gameLogic = new GameLogic(); & 再描画();
今、私のデータ配列はきれいで、線だけを描くはずです..
いずれにせよ、Windows はまったく変更されていません。
私は運がないすべてを試しました。助言がありますか?
GameBoard.java:
public class GameBoard extends javax.swing.JPanel {
private GameBoardLogic GameLogic;
//.....
public void Restart()
{
GameLogic = new GameBoardLogic();
removeAll();
repaint();
}
Main.java:
public class Main {
private static GameBoard TTT;
private static JFrame application;
public static void main(String[] args) {
application = new JFrame("Tic-Tac-Tow");
TTT = new GameBoard();
application.add(TTT);
application.setSize(350, 350);
application.setVisible(true);
//.....
if ( JOptionPane.showConfirmDialog(null, "Do you want to play again?") ==
JOptionPane.YES_OPTION )
{
application.removeAll();
TTT.Restart();
application.add(TTT);
application.validate();
}