[Java] alten drawString behalten

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von damn-86, 25. September 2007 .

Schlagworte:
  1. 25. September 2007
    alten drawString behalten

    Hi Leute,

    ich bin gerade dabei eine graphische Oberfläche für einen Algorithmus zu programmieren. Das klappt auch alles soweit ganz gut.

    Ich habe nun ein "Schachbrett" und auf dem will ich Zahlen eintragen (den Weg des Springers).
    Bin jetzt soweit, dass er mir die Zahlen ins richtige Feld schreibt, aber er schreibt mir immer nur den aktuellen Sprung rein und nicht die vorigen Sprünge.

    Hier mal mein Code:
    Code:
    int o=8;
     int p=8;
     int zeile=0;
     int spalte=0;
     g.setColor(Color.blue);
     int j = 1;
     int k = 0;
     int step = 0;
     
     for(int i = 1; i<=o*p ; i++){
     g.drawRect(k*40+20, j*40, 40, 40);
     k += 1;
     if (i%p == 0){
     j += 1;
     k = 0;
     }
     }
     
     
     curCount = logElement.getValue();
     step = logElement.getStep(); 
     
     String[] result = curCount.split(",");
     spalte = Integer.parseInt(result[0]);
     spalte = spalte-1;
     zeile = Integer.parseInt(result[1]);
     g.drawString(" "+step, spalte *40+25, zeile*40+25 );
     
     g.drawString("Schritt "+logElement.getStep()+": "+logElement.getDescription()
     +": "+logElement.getValue(),20,20);
     }
    Ich möchte quasi ein Feld haben, dass sich nach und nach mit den Zahlen von step füllt. Bei mir verschwinden aber immer die alten Zahlen, wie mache ich das?

    Noch mal kurz graphisch dargestellt:

    1 | 4 | 6 | 7
    | 2 | | 3
    5 | | |

    so soll es sich füllen, was ich aber bekomme ist:
    beim ersten schritt: 1 | | |
    | | |....



    beim 2.Schritt: | | |
    | 2 | |


    Danke für eure Hife
     
  2. 25. September 2007
    AW: alten drawString behalten

    hi,

    mit dem feld machst du das schon richtig. ich vermute mal, wenn du diese methode aufrufst, wird er immer das vorhergehende wert überschreiben.
    du könntest es sol lösen:
    wenn er in diese methode reingeht, dann legt er ein neues feld an, wo er die daten reinschreibt.
    zum beispiel: wenn pferd, dann schreibe in das feld
    wenn läufer, dann in diese feld.

    oder:

    du schreibst dir die ergebnisse in eine externe datei, wo du dann immer den letzten zug abrufst.

    nice day!!!

    hoffe ich habe mich verständlich ausgedrückt
     
  3. 25. September 2007
    AW: alten drawString behalten

    danke erst mal!

    von der Idee her, hört sich das ganz gut an. An sowas hatte ich auch schon gedacht mit dem Ergebnis sichern.
    Aber wie realisier ich das?

    Mir fällt da nichts ein.

    Kann ja schlecht einen Screenshot machen und sagen, dass er da drin rummalen soll (obwohl das von der Idee her genau das richtige wär *g*)


    Bin halt noch ziemlicher Neuling,was Java angeht*g*
     
  4. 25. September 2007
    AW: alten drawString behalten

    soll er nur den letzten zug anzeigen???

    dann ist es ganz einfach. du musst dir nur ein neues array anlegen. wie du es definierst ist es eigentlich egal. zum beispiel Springer-->von b4 nach c6 also hast du 3 werte. so musst du dann auch dein array deklarieren.
    ich kann nur dieses link ans herz legen: Galileo Computing :: Java ist auch eine Insel - index
    dort wird eigentlich alles beschrieben, was du dazu brauchst.


    nice day!!!

    viel spass beim basteln!!!

    ps: ich glaube ich denke zu kompliziert!!! du brauchst dir doch nur einen string anzulegen, der die daten beinhaltet und den rufst du dann wieder auf ...
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.