Ergebnis 1 bis 4 von 4
  1. #1
    Richard Stallman
    Registriert seit
    09.07.2008
    Beiträge
    2.199

    Standard Java Index eines Objektes bekommen

    Hey, ich habe zwei voneinander unabhängige Programme.. das eigentliche Programm, und die GUI.
    Es gibt ein Feld lauter Labels und per Klick möchte ich diese färben.

    Gleichzeitig ist das ganze aber auch an ein anderes Programm gebunden, welches den genauen Status eines Feldes speichert. Es sind also zwei mehrdimensionale Arrays, eines speichert den Wert in Form von Integern, das andere besteht aus Labeln.

    Das aktuell angewählte Label bekomme ich so:
    e.getComponent().setBackground(Color.blue);

    Aber jetzt muss ich auch noch den Wert in dem anderem Array anpassen, und dafür bräuchte ich den Index dieser Komponente, da beide Arrays gleich groß sind.

    Weiß jemand wie das geht?
    Signatur hat Pause..


  2. #2
    Moderator Avatar von Jut4h.tm
    Registriert seit
    25.06.2006
    Beiträge
    792

    Standard

    O.o ... Was machst du denn XD
    also nochmal, was willst du machen und welchen index willst du ? den von der 2. dimension?

  3. #3
    Der `Toastflüsterer` Avatar von AlterHacker
    Registriert seit
    27.09.2008
    Beiträge
    690

    Standard

    Ganz einfach ;-)
    Code:
    int x = -1, y = -1;
    for(int px = 0; px < **größe**; px++) {
      for(int py = 0; py < **größe**; py++) {
        if ( labelarray[px][py] == e.getComponent() ) { x = px; y = py; }
      }
    }
    if( x == -1 && y == -1 ) Fehler
    else {
      anderesarray[x][y] = "Was anderes";
    }

    Security is an illusion.
    Cheater : 8=o
    Normaluser : 8=======o
    Ich : 8================o

    BM: (4|2|0)

  4. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    100 (30.06.2010)

  5. #4
    Richard Stallman
    Registriert seit
    09.07.2008
    Beiträge
    2.199

    Standard

    Jap so hatte ich das auch gelöst.. ist bei mehr als 200*200 Labeln aber umständlich.

    Beim logischen Nachdenken ist mir dann jedoch aufgefallen, dass die Label in dem Frame ja alle gleich groß sind (meistens 20) und jeweils 5 Pixel Abstand zur Panel-"Wand" haben. Also kann ich mit den Koordinate ganz einfach den Index des Labels errechnen
    Ist nur in anderen Fällen sicher nicht möglich..
    Signatur hat Pause..


Ähnliche Themen

  1. Java Programme bekommen keine Internetverbindung
    Von Tomo im Forum Mobile Devices
    Antworten: 0
    Letzter Beitrag: 28.12.2008, 20:21

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •