# Memory-Spiel mit Buttons



## Hikota (22. Feb 2009)

Ich hab mich schon ein paar Stunden hier im Forum auf die suche gemacht nach hilfreichen Threads hab aber leider nicht das gefunden was ich genau gesucht hab.

Also es geht darum ich würde gern ein Memory Spiel Programmieren und dachte dabei an ein 4*3 großes feld was aus Buttons Besteht

Vor beginn ist man in einer art hauptmenu mit einem Button "Spielstart" wenn man darauf klickt soll das spielfeld geöffnet werden und die Buttons bekommen ihre Bilder (natürlich nicht sichtbar)

Danach verläuft eigentlich allles so wie bei einem normalen spiel 

hoffe das mir da ein paar einen denkanstoß geben können wie sich das ganze Programmtechnisch umsetzen ließe.


Eclipse SDK Version: 3.2.2
Visual Editor


MfG 

Hikota


----------



## Marco13 (22. Feb 2009)

Das klingt, als hättest du vor, das eigentliche Spiel (d.h. das Datenmodell) und die Benutzerobefläche (View) zu "vermischen" - was aus Design-Sicht nicht so gut ist. Wenn es nur darum geht, ein Progrämmchen zusammenzustümpern, wo man mal "ein bißchen was mit Swing macht" ist das vielleicht nicht so wichtig, aber wenn es darum geht, ein Programm zu schreiben, dass sich an den Sturkturen orientiert, die man für "richtige" Programme verwendet, dann könntest du unter dem Stichwort "Model View Controller" einige Informationen zu möglichen Strukturierungen finden. 

Vielleicht ist es im ersten Moment schwierig, sowas auf ein Memory-Spiel zu übertragen, darum ein paar Stichpunkte, wie ich vorgehen würde - ganz unverbindlich 

- Genau überlegen, was "ein Memory-Spiel" können muss. Was hat es für Eigenschaften? Was kann man damit machen? Das dann erstmal (grob, um einen Überblick zu bekommen) in einem Interface oder einer Dummy-Klasse namens "MemoryModel" oder so zusammenfassen. Z.B. Methoden, um abzufragen, wie viele Karten es gibt, und Methoden um Karten umzudrehen, und Methoden, um abzufragen, welche Karten aufgedeckt sind usw....

Wenn das fertig ist, geht's weiter.

- Genau überlegen, worüber die GUI informiert werden muss. Wenn z.B. eine Karte aufgedeckt wurde, muss man der GUI sagen können, welche Karte aufgedeckt wurde, damit die GUI dann die umgedrehte Karte zeichnen kann. Diese Informationen dann in einerm Interface wie z.B. "MemoryListener" zusammenfassen.

Wenn das fertig ist, geht's weiter.

- Genau überlegen, wie das GUI aussehen könnte. In diesem Fall: Das GUI ist eine Klasse, wie ein "MemoryModel" übergeben bekommt, dann einen Haufen Buttons in ein GridLayout packt, und ActionListener an die Buttons hängt, die jeweils die Methode im MemoryModel aufrufen, mit der man die entsprechende Karte umdrehen kann usw...

So grob als pragmatischer Ansatz...


----------



## Hikota (22. Feb 2009)

Danke schonmal für den Ansatz 

Jetzt hab ich ne weitere Frage 

Wenn ich Bilder in einer Access Datenbank habe ist es möglich diese Auszulesen und nem Label oder änlichem als Icon zu verpassen ?

Wenn ja wäre ich euch sehr verbunden wenn ihr mir eine art beispiel (quellcode) oder änliches geben könntet.

MfG

Hikota


----------

