ActionEvent w pętli

0

Bry, zacząłem robić grę kółko i krzyżyk, to jest mój taki pierwszy "większy" projekt w tym języku.

tutaj problem:

public void actionPerformed(ActionEvent e) 
	{
		Object source = e.getSource();
		
		int gracz=0; 
		
		while(gracz==10)
		{
			gracz++;
			
			if(gracz%2==0) // Jesli x parzyste, gracz stawia X
			{
				if(source == jxj)
				{
					jxj.setText("X");
					continue;
				}
				else if(source == jxd)
				{
					jxd.setText("X");
					continue;
				}
				else if(source == jxt)
				{
					jxt.setText("X");
					continue;
				}
				
			}
			else // jesli nie, gracz stawia O 
			{
				if(source == jxj)
				{
					jxj.setText("O");
					continue;
				}
				else if(source == jxd)
				{
					jxd.setText("O");
					continue;
				}
				else if(source == jxt)
				{
					jxt.setText("O");
					continue;
				}
				
				
			}
			
		}
		
		
		
	}

jxj= jeden x jeden, jxd = jeden x dwa itd. powiedzmy, że wymiary macierzowe. Poki co zrobiłem tylko dla wiersza pierwszego.
W skrocie: pętla ma działać tak, że jeśli wciśniemy na przycisk to ma nam się tam wpisać X lub O w zależności od pętli.
Niestety coś nie działa...

Podkreślam, jestem bardzo świeży, to co widzicie to pomysł na który wpadłem, który na pewno jest daleko od Waszego ideału.
Wszelka pomoc i sugestie mile widziane

0
        int gracz=0; 
 
        while(gracz==10)

Ile razy, Twoim zdaniem, wykona się kod pętli while?

0

wyczuwam podstęp, chyba powinienem zmienić na '<='. wracaj do pytanie, ani razu?

0

Zgadłeś, ani razu. Moim zdaniem cała ta pętla nie ma sensu.

0

moim zdaniem na pewno jest inny sposób, ale jak wspomniałem jestem nowy i jego nie znam. Z drugiej strony czemu pętla nie działa jak należy?

0

Nie rozumiem pytania, pętla nie działa bo tak napisałeś warunek, że kod w pętli nigdy się nie wykonuje.
Proponujesz zmianę na while(gracz<=10), kod się co prawda wykona, ale jego działanie jest, moim zdaniem, bez sensu.

0

oj, przecież zmieniłem na '<='

0

I co z tego, że zmieniłeś? W pisujesz w jedno i to samo miejsce na zamianę "X" i "O", kończysz "O"-em.

0

o wlasnie o to mi chodzi. ok, chce zapełnić całą plansze X i O na zmiane, co proponujesz? (może coś z pętlą ^^?)

0
  1. Czy znasz zasady gry w kółko i krzyżyk?
  2. To ma być gra człowiek vs komputer, czy człowiek vs człowiek, a komputer tylko jest planszą?
0

Znam zasady, nie chodzi mi teraz o zrobienie pełnej wersji gry. Pytam się Was tylko o kawałek, mianowicie o wypełnienie przycisków X lub O, na zmiane, do momentu aż wszystki przyciski będą miały którąś z tych dwóch opcji

prosze Panie Bogdanie, bez tego nie dam rady zasnąć :D

1

Zrób tablicę przycisków

JButton[][] przyciski = new JButton[3][3];
for(int i=0;i<3;i++){
   for(int j=0;j<3;j++){
      przyciski[i][j] = new JButton(((i+j)%2 == 0)?"O":"X");
   }
}
0

dziękuję bardzo :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1