Mam prosty JPanel dla kółko i krzyżyk, rysowanie linii ... więc klasa TTT rozszerza JPanel i zawiera wewnątrz obiekt GameLogic.Oczyszczanie mojego JFrame'a i JPanela w nowej grze
wszystko jest w porządku, aplikacja to JFrame w Main, dodając TTT i wszystkie dobre.
ale kiedy chcę, aby ponownie uruchomić nową grę,
nazywam "restart" w moim TTT który basiclly robi: gameLogic = new GameLogic(); & repaint();
teraz moja tablica danych jest czysty i powinien malować tylko linie ..
sposób system Windows nie zostanie zmieniona w ogóle.
Próbowałem wszystkiego bez powodzenia. Jakieś sugestie?
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();
}
* "Wszelkie sugestie ??" * 1) Dla lepszej pomocy wcześniej, opublikuj [SSCCE] (http://sscce.org/). 2) Napraw to lepkie "?" klawisz. –
Czy zamierzasz opublikować SSCCE? –