Schachfeld designen

Status
Nicht offen für weitere Antworten.

Bit2_Gosu

Bekanntes Mitglied
Hi!

Ich möchte ein Schachfeld designen. Mit Bildern der Schachfiguren, die in die 64 Quadrate eingebettet sind.
Nun weiß ich nicht wirklich, mit welchen Klassen ich sowas am besten designe.

Ich hab mir mal JTable angeschaut, bin mir aber nicht sicher, ob das eine gute Lösung ist.

Was meint ihr?
 

Marco13

Top Contributor
Klingt erstmal nach einem JPanel, das man (in der paintComponent) mit einem Schachbrettmuster ausmalt, und in das man dann mit g.drawImage(...) die Figurenbilder malt....
 

KrokoDiehl

Top Contributor
Klingt für mich auch so: Ein JPanel pro Schachfeld und noch eine eigene Klasse für die Figuren, die sich selbst zeichnen können.
Mit einer JTable jedenfalls wirst du zuviel aufwand haben, was CellRenderer etc. anbelangt. Außerdem musst du dann extra den TableHeader ausschalten und das Sortieren/Verschieben etc. deaktivieren... denke das geht direkter ;-)
 

Landei

Top Contributor
Bloss keine JTable nehmen. Ein JPanel mit GridLayout und etwas Logik, die für Höhe = Breite sorgt, sollte ausreichen.
 

Quaxli

Top Contributor
Evtl. noch mit einer Klasse im Hintergrund die ein 8 x 8 Array mit Feldern bereithält, in dem relevanten Informationen gespeichert werden (welche Figur steht wo).
 

Marco13

Top Contributor
Dass es hier nur um die View geht, und man nicht sowas machen sollte wie
Code:
class MyGreatChessEngine
{
    List<Move> getAllPossibleMoves()
    {
        if (SwingUtilities.getComponentAt(...) instanceof BauerPanel) { ... }
    }
}
sollte klar sein. Vielleicht sollte man es aber auch noch mal deutlich sagen ;)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben