Aah. Warum geht das nicht?

Status
Nicht offen für weitere Antworten.
M

Munich4Me

Gast
Also danke erstmal alle für eure Hilfe bisher!

Ich hab das Applet jetzt so weit das es läuft (toll, ge? :D ) - nur geht es leider nicht :(

Code:
import java.awt.*;
import java.applet.*;

public class sudoku extends Applet
{
	int x,y,z;
	int i,j,k;
	int t,s,r;
	int a[][][]=new int[10][10][10]; //Array von [0][0][0] - [9][9][9]
								     //0.1.1 - 0.9.9 Ergebnis,
								     //1.1.1 - 9.9.9 Möglichkeiten
	TextField tf[][] = new TextField[9][9];	//tf[0][0] - tf[8][8]
	TextField ausgabe = new TextField(5);
	Button BtLos = new Button("try...");
	Button BtLoesen = new Button("do it!");
	GridLayout lay = new GridLayout(10,10);
	public void init()
	{
		setBackground(Color.blue);
		setLayout(lay);
		
		for (i=0; i<=8; i++)
		{
			for (j=0; j<=8; j++)
			{
				tf[i][j] = new TextField(1);
				add(tf[i][j]);
			}
		}
		add(BtLos);
		add(ausgabe);
		add(BtLoesen);
		ausgabe.setEditable(false);		
	}
	public boolean action(Event e, Object o)
	{	
		for (i=0; i<=8; i++)		   
		{							   
			for (j=0; j<=8; j++)
			{
				if (tf[i][j] == null)
				{
					a[0][i][j] = 0;
				}
				else
				{
					a[0][i+1][j+1] = Integer.parseInt(tf[i][j].getText());
					tf[i][j].setEditable(false);
				}
				for (k=1; k<=9; k++)
				{
					a[i][j][k] = 1;
				}
			}
		}
		if (e.target == BtLos)
		{
			for (x=1; x<=9; x++)
			{
				for (y=1; y<=9; y++)
				{
					for (z=1; z<=9; z++)
					{
						if (a[0][x][y] == z)
						{
							for (i=1; i<=9; i++)
							{
								if(z == i)
								{
									a[x][y][i] = 2;
								}
								else
								{
									a[x][y][i] = 0;
								}
							}
						}
					}
				}
			}
			t=0;
			do
			{
				for (x=1; x<=9; x++)
				{
					for (y=1; y<=9; y++)
					{
						for (z=1; z<=9; z++)
						{
							if (a[x][y][z] == 2)
							{
								for (i=1; i<=9; i++)
								{
									if (x == 1)
									{
										for (j=1; j<=9; j++)
										{
											if (y != j)
											{
												a[i][j][z] = 0;
											}
										}
									}
								}
								for (j=1; j<=9; j++)
								{
									if (y == j)
									{
										for (i=1; i<=9; i++)
										{
											if (x != i)
											{
												a[i][j][z] = 0;
											}
										}
									}
								}
								s=x-((x-1)%3);
								r=y-((y-y)%3);
								
								for (i=s; i<=(s+2); i++)
								{
									for (j=r; j<=(r+1); j++)
									{
										if (a[0][i][j] != a[0][x][y])
										{
											a[i][j][z] = 0;
										}
									}
								}
							}
						}
					}
				}
				for (x=1; x<=9; x++)
				{
					for (y=1; y<=9; y++)
					{
						for (z=1; z<=9; z++)
						{
							if (a[x][y][z] == 2)
							{
								a[0][x][y] = z;
							}
							i=0;
							for (j=1; j<=9; j++)
							{
								if (a[x][y][j] == 1)
								{
									i=i+1;
								}
							}
							if (i == 1)
							{
								for (i=1; i<=9; i++)
								{
									if(a[x][y][i] == 1)
									{
										a[x][y][i] = 2;
										a[0][x][y] = i;
										t++;
									}
								}
							}
						}
					}
				}
			}
			while (t!=0);
			
			t=0;
			for (i=1; i<=9; i++)
			{
				for (j=1; j<=9; j++)
				{
					if (a[0][i][j] == 0)
					{
						t++;
					}
				}
			}
			if (t==0)
			{
				ausgabe.setText("yes!");
			}
			else
			{
				ausgabe.setText("oh-oh!");
			}
		}
		if (e.target == BtLoesen)
		{
			for (i=1; i<=9; i++)
			{
				for (j=1; j<=9; j++)
				{
					tf[i-1][j-1].setText(String.valueOf(a[0][i][j]));
				}
			}
			ausgabe.setText("ready!");
		}
		return true;
	}
}

Kann mir einer sagen warum es nicht geht? Ich hab alles versucht - aber wenn ich auf einen Button drück macht das Programm gar nichts... Warum???

Und: Weiß einer wie ich einzelnen TextFelder eine Hintergrundfarbe geben könnte?

MfG Colin
 

Redfrettchen

Bekanntes Mitglied
Hi,
erstmal lol für die schöne Welle von for-Schleifen, wenn man den Quelltext überfliegt, und dann würde ich sagen, dass du keinem Button sagst, dass er deine Methode action (warum auch immer action) verwenden soll. Du musst dem Button einen ActionListener zuordnen mit BtLoesen.addActionListener(ActionListener). Zunächst kannst du ja deine Klasse ActionListener implementieren lassen und die Methode action in actionPerformed(ActionEvent) umwandeln. Dann machst du halt BtLoesen.addActionListener(this) und schaust was passiert.
 
M

Munich4Me

Gast
Code:
import java.awt.*;
import java.applet.*;

public class sudoku extends Applet implements ActionListener
{
	int x,y,z;
	int i,j,k;
	int t,s,r;
	int a[][][]=new int[10][10][10]; //Array von [0][0][0] - [9][9][9]
								     //0.1.1 - 0.9.9 Ergebnis,
								     //1.1.1 - 9.9.9 Möglichkeiten
	TextField tf[][] = new TextField[9][9];	//tf[0][0] - tf[8][8]
	TextField ausgabe = new TextField(5);
	Button BtLos = new Button("try...");
	Button BtLoesen = new Button("do it!");
	GridLayout lay = new GridLayout(10,10);
	public void init()
	{
		setBackground(Color.green);
		setLayout(lay);
		
		for (i=0; i<=8; i++)
		{
			for (j=0; j<=8; j++)
			{
				tf[i][j] = new TextField(1);
				add(tf[i][j]);
			}
		}
		add(BtLos);
		add(ausgabe);
		add(BtLoesen);
		ausgabe.setEditable(false);	
		BtLoesen.addActionListener(this);
		BtLos.addActionListener(this);	
	}
	public boolean actionPerformed(ActionEvent e)
	{	
		if (e.target == BtLos)
		{

so in der Art? Ich check das mit den ActionListeners nicht ganz. So zeigt der Compiler auf jeden Fall mal Fehler an.
Und zu dem Event, dass bei mir vorhin die Aktion ausgelößt hat: Das ist doch das event e auf dass das Programm wartet - eine Art vereichfachter ActionListener, oder? So haben wir es mal in der Schule gemacht...

MfG und Danke!
 
B

Beni

Gast
Wenn ihr das so in der Schule gemacht habt - mein herzliches Beileid, aber das gilt seit einem Jahrzehnt als veraltet...

Es heisst nicht "public boolean actionPerformed...", es heisst "public void actionPerformed...".
 
M

Munich4Me

Gast
Dann bringt der Compiler den Fehler "c:\...\sudoku.java:34: addActionListener(java.awt.event.ActionListener) in java.awt.Button can not be supplied in (sudoku)" in der Zeile "BtLoesen.addActionListener(this)"

und für die Zeile "public class sudoku extends Applet implements ActionListener" bringt er "cannot resolve symbol"
...
 
M

Munich4Me

Gast
Also ich bin jetzt so weit dass er das Applet läd, nur irgendwie ließt er die Zahlen nicht richtig ein. Kann mir einer sagen wo in dem Quelltect oben (bei den ganzen Schleifen) ein fehler ist?

MfG Colin
 

Bastian

Bekanntes Mitglied
also, ich glaub kaum, dass sich irgendjemand in deine schleifen-kaskaden reinlesen wird. kommentiere mein deinen quelltext sehr genu (also jede schleife. dann kann man das verbessern (=weniger for-schleifen) und den fehler somit auch ausmerzen.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
P Netbeans installation geht nicht Java Basics - Anfänger-Themen 26
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
P Installation JRE 8u321 startet, geht aber nicht weiter Java Basics - Anfänger-Themen 1
E Pervasive PSQL insert funktion geht nicht Java Basics - Anfänger-Themen 9
U Warum kann ich die Methode in der ENUM Klasse nicht aufrufen? Und warum geht die Switch nicht? Java Basics - Anfänger-Themen 8
melisax Lower & Uppercase Beispielprogramm geht nicht Java Basics - Anfänger-Themen 3
N methodenaufruf for each geht nicht Java Basics - Anfänger-Themen 2
B Interface List - Objekt übergeben? Einzelnes Objekt geht, aber Liste nicht? Java Basics - Anfänger-Themen 4
CptK Klassen KeyListner geht nicht Java Basics - Anfänger-Themen 7
L Klassen Objekt aus einer Warteschlange in eine andere übergeben, geht nicht? Java Basics - Anfänger-Themen 6
K Armstrong Programm geht nur bis 1000, aber nicht weiter Java Basics - Anfänger-Themen 2
amazinglife77 Input/Output Lesen/Schreiben Properties: in eclipse geht, als JAR nicht Java Basics - Anfänger-Themen 4
V Erste Schritte Warum geht meine continue Anweisung nicht? Java Basics - Anfänger-Themen 8
MR._FIRE_Flower String.split("(") geht nicht Java Basics - Anfänger-Themen 4
M Restbuchwert Berechnung geht nicht Java Basics - Anfänger-Themen 45
S int addieren geht nicht Java Basics - Anfänger-Themen 13
L system.print.out geht nicht Java Basics - Anfänger-Themen 11
M Arrays einspeichern geht nicht Java Basics - Anfänger-Themen 21
I erstelle Vorschaubild mit der lib PDF-Renderer und möchte danach Dateiname ändern -> geht aber nicht Java Basics - Anfänger-Themen 0
J Ausführen geht nicht Java Basics - Anfänger-Themen 19
G System.out.printf geht nicht Java Basics - Anfänger-Themen 6
E Erste Schritte [Noob] Warum geht meine For-Schleife nicht? Java Basics - Anfänger-Themen 2
S Button "Berechnen" geht nicht Java Basics - Anfänger-Themen 3
K JUnit: Objekte von eigenen Klassen vergleichen...geht nicht Java Basics - Anfänger-Themen 5
T fianl array geht nicht... Java Basics - Anfänger-Themen 2
D Java geht auf windows 64 bit nicht. Java Basics - Anfänger-Themen 5
T sample.war geht nicht... Java Basics - Anfänger-Themen 1
C Datentypumwandlung geht nicht Java Basics - Anfänger-Themen 5
U kompilieren geht nicht wg. Formatierung wahrscheinlich Java Basics - Anfänger-Themen 7
G While schleife mit 2 Bedingungen geht nicht! Java Basics - Anfänger-Themen 15
O Jar Datei erstellen geht nicht. Java Basics - Anfänger-Themen 4
O (.+?) --> $1 geht nicht Java Basics - Anfänger-Themen 5
V relativer Pfad geht nicht, absolut schon? Java Basics - Anfänger-Themen 3
R Java JDK/ Kompiler geht nicht Java Basics - Anfänger-Themen 4
J Warum geht int und String nicht? Java Basics - Anfänger-Themen 18
J repaint() geht gar nicht; GUI aktualisieren Java Basics - Anfänger-Themen 10
N ArrayList geht nicht Java Basics - Anfänger-Themen 8
R Einfacher Timer geht nicht Java Basics - Anfänger-Themen 7
D Compiler-Fehler ANT-Script geht nicht Java Basics - Anfänger-Themen 6
A Android Datenbank gaaanz einfaches Insert geht nicht - warum? Java Basics - Anfänger-Themen 4
N JAVA Installation - Umgebungsvariable geht nicht. Java Basics - Anfänger-Themen 3
K Aus JFrame-Fenster SuM-Fenster öffnen geht nicht! Java Basics - Anfänger-Themen 8
K Erste Schritte Progressbar geht nicht Java Basics - Anfänger-Themen 5
H Ein alternativer Konstruktor geht nicht Java Basics - Anfänger-Themen 3
P quickSort eines Objekt-Arrays geht nicht! Java Basics - Anfänger-Themen 11
M if then else geht nicht Java Basics - Anfänger-Themen 10
N Methoden mehrere replace hintereinander geht nicht ? Java Basics - Anfänger-Themen 2
Maxim6394 KeyListener geht nicht Java Basics - Anfänger-Themen 15
C Erste Schritte switch Anweisung geht nicht Java Basics - Anfänger-Themen 3
N geht oder geht nicht? Java Basics - Anfänger-Themen 24
Z Anfügen an Arraylist geht nicht Java Basics - Anfänger-Themen 3
M Unterverzeichnisse löschen geht nicht. Java Basics - Anfänger-Themen 3
M If Abfrage geht nicht Java Basics - Anfänger-Themen 2
0 file.delete() geht nicht Java Basics - Anfänger-Themen 23
0 String split und replace geht nicht Java Basics - Anfänger-Themen 17
A String-Vergleich geht nicht Java Basics - Anfänger-Themen 2
K Int nach String geht nicht Oo Java Basics - Anfänger-Themen 13
K Code geht nicht Java Basics - Anfänger-Themen 6
F Spiel geht nicht mehr nach neuer Klasse Sound Java Basics - Anfänger-Themen 18
A for Geht nicht richtig ? Java Basics - Anfänger-Themen 10
Y Bild mit poi in PPT einbinden - geht nicht Java Basics - Anfänger-Themen 4
O Integer in File mit Filewriter schreiben - geht nicht richtig Java Basics - Anfänger-Themen 4
pindakaas Compiler geht nicht (Dekorator Muster) Java Basics - Anfänger-Themen 18
N OOP Kollisionserkennung geht nicht 100% Java Basics - Anfänger-Themen 11
A javac geht, java nicht ? Java Basics - Anfänger-Themen 20
O Will ein Jar-Archive machen mit FAT JAR - geht nicht ! Java Basics - Anfänger-Themen 2
Burny91 File.delete(file) geht nicht-Offener Stream aber WO? Java Basics - Anfänger-Themen 4
N JScrollPane repaint(); geht nicht Java Basics - Anfänger-Themen 4
L Programm zur Halbierung eingegbener Zahl geht nicht. Java Basics - Anfänger-Themen 7
J Escape taste geht ohne cursor im textfeld nicht. Java Basics - Anfänger-Themen 4
L Javac geht nicht Java Basics - Anfänger-Themen 17
I Runden / Zweikommastellen geht nicht... Java Basics - Anfänger-Themen 3
T compareTo warum geht es nicht? Java Basics - Anfänger-Themen 2
D String.split(".") geht nicht? Java Basics - Anfänger-Themen 3
J Weshalb zum Geier geht die Funktion nicht? Java Basics - Anfänger-Themen 2
H TreeMap.remove(value) - und nicht mit key! Geht das? Java Basics - Anfänger-Themen 18
L longwert mit Methode addieren geht nicht! Java Basics - Anfänger-Themen 20
X Robot geht nicht mehr (Ubuntu 9.10) Java Basics - Anfänger-Themen 2
T setContentPane() geht nicht Java Basics - Anfänger-Themen 6
V If - Abfrage geht nicht -> Warum ? :) Java Basics - Anfänger-Themen 17
S instanceof Comparable...geht nicht? Java Basics - Anfänger-Themen 20
S Grafischer Taschenrechner geht nicht :-( Java Basics - Anfänger-Themen 19
S Accordeon bei Webseite geht bei Ie8 nicht Java Basics - Anfänger-Themen 2
JFeel-x renameTo windows XP geht gar nicht? Java Basics - Anfänger-Themen 5
R Regulären Ausdruck geht nicht Java Basics - Anfänger-Themen 2
R JApplet geht in Eclipse, nicht aber im Browser Java Basics - Anfänger-Themen 2
T Mehr Anfänger geht nicht - Wie bekomme ich das zum laufen! Java Basics - Anfänger-Themen 6
E Code kompilieren geht aber ausführen nicht Java Basics - Anfänger-Themen 3
L Regex geht nicht. Java Basics - Anfänger-Themen 2
L Sortieren geht nicht Java Basics - Anfänger-Themen 4
M Aufruf von jar geht nicht Java Basics - Anfänger-Themen 2
hdi HTML code geht nicht bei JEditorPane Java Basics - Anfänger-Themen 5
P Java Ticker auf HP geht nicht. Java Basics - Anfänger-Themen 2
F JSF mit CSS verbinden // geht nicht ? Java Basics - Anfänger-Themen 3
B ItemListener - setText Befehl geht nicht Java Basics - Anfänger-Themen 3
M java Programmname, mal geht es mal nicht Java Basics - Anfänger-Themen 3
M UIManager und JSpinner geht nicht? Java Basics - Anfänger-Themen 2
C Datum prüfung geht nicht? Java Basics - Anfänger-Themen 9
G Poi Api geht nicht Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben