Hi ich bin neu bei Eclipse und habe in java Tic Tac Toe programiert dabei habe ich das interface mit jframe beim expotieren funktioniert dad mit den X+O bild?

...komplette Frage anzeigen

2 Antworten

Dies ist keine Antwort. Dies ist ein verwirrter Kommentar.

Ich habe keine Ahnung, was du Fragen willst. Ich habe keine Ahnung, was du dir da kompliziertes zusammenschraubst. Warum zeichnest du so viel?

Um die GUI zu bauen, brauchst du doch nur ein 3x3 Feld aus JButtons. Ein 3x3 Feld kannst du mit Hilfe eines GridLayouts ganz einfach zeichnen:

jpanel.setLayoutManager(new GridLayout(3,3));

Oder so ähnlich.

Bitte kommentiere deinen Code! Bitte erkläre ihn! Bitte erkläre deine Frage verständlich! (Soll kein Vorwurf sein ;-))

Was die Xe und Os angeht: Male einfach ein "X" oder ein "O" ( als Buchstabe) auf die Buttons:

button.setText("X");

So weit so klar?

Ein Vorschlag, wie du deinen Code besser strukturieren kannst: Das Model-View-Controller-Prinzip. Dabei benutzt du im Wesentlichen 3 Klassen: Ein Model, eine View und einen Controller. Der Controller ist das Steuerelement. Ihn erzeugst du in der Mainmethode. In seinem Konstruktor erzeugt der Controller dann ein Model (ein Datenspeicherobjekt) und eine View, ein Anzeigeobjekt. Was passiert in deren Konstruktoren? Der der View lässt sie sich selbst zeichnen und der des Models erzeugt sogenannte "Defaultdaten", also die Daten, die von Anfang an vorhanden sind. Die View kennt das Model, der Controller kennt beide, das Model kennt keinen.

Wenn jetzt ein Button gedrückt wurde…

  1. Du klickst auf den Button
  2. Der Button schickt ein ActionEvent
  3. Die View erhält dieses ActionEvent (weil sie einen Listener auf die Buttons angesetzt hat)
  4. Die View weiß, welcher Button gedrückt wurde. Sie schickt diese Information mit einem ActionEvent zum Controller. (Der Controller hat sich als Listener angemeldet.)
  5. Der Controller sagt dem Model: Button so-und-so wurde gedrückt
  6. Das Model trägt das ein
  7. Der Controller sagt der View: zeichne dich mal neu
  8. Die View zeichnet sich neu und holt sich dafür die Daten aus dem Model

Verständlich? Was meinst du dazu?

(Und ja, dass sind alles nur sinnlose, rumgeworfene Informationen, weil du eine unverständliche Frage gestellt hast und viel Code dazugeworfen hast, anstatt die wesentlichen Stellen rauszufiltern.)

Bitte nimms nicht persönlich ;-)

TheRedCraft 28.02.2017, 17:17

ich habe es jetzt mit g.drawString gemacht das funktionierte

0

Das Beispiel ist weder vollständig noch geht hieraus eine verständliche Frage hervor. kannst du bitte die Frage editieren oder erneut stellen? 

Was möchtest Du wissen?