tutorials.de Buch-Aktion 02/2012
Like Tree2Danke
  • 1 Beitrag von Matt297
  • 1 Beitrag von Matt297
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
379
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    mr_xxl mr_xxl ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Hallo zusammen,

    ich habe eine ComboBox mit drei Auswahlmöglichkeiten. Dazu habe ich actonListner gemacht, der den Index uberwacht. Nun will ich diesen Index für die Berechnung in einer statischen Methode verwenden, bis jetzt habe ich es nicht hingekriegt. Habt ihr vielleicht irgendwo ein Beispiel gesehen wie man es richtig macht?
     

  2. #2
    Avatar von Akeshihiro
    Akeshihiro Akeshihiro ist gerade online Mitglied Platin
    Registriert seit
    Aug 2008
    Ort
    Kirchlengern (NRW)
    Beiträge
    575
    Um ehrlich zu sein, verstehe ich die Sachlage nicht mal wirklich. Versuchs mal anders zu erklären oder poste den Code, um den es geht, vielleicht wird dann ein Schuh draus
     
    Man sagt, das Schwert eines Samurai sei seine Seele ...

    Mit den Beiträgen ist es wie mit Schwertern: Je besser die Rohstoffe sind und je öfter man diese bearbeitet, desto hochwertiger sind sie.

    Das Schmieden ist eine Kunst; Das Schreiben auch ;)

  3. #3
    Matt297 Matt297 ist offline Mitglied Gold
    Registriert seit
    Oct 2008
    Beiträge
    172
    willst du die statische Methode bei Änderung des Indizes ausführen, sprich wenn der ActionListener ausgeführt, oder wird sie dauerhaft ausgeführt?
    Aus deinem Text vermute ich eher ersteres, bin mir aber nicht ganz sicher, auf jeden Fall gäbe es dafür eine sehr simple Möglichkeit: Parameter.
    Ein gekürztes Beispiel:

    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    public static void eineStatischeFunktion(int index) {
      //tu irgendwas mit dem index, z.B. ausgeben
      System.out.println("" + index);
    }
     
    // alles mögliche an Code
     
    //irgendeine Funktion
      jcombobox.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
          eineStatischeFunktion(jcombobox.getSelectedIndex();
        }
      });

    So ungefähr könnte das aussehen, kann sein das da noch syntaktische Fehler drin sind, habs jetzt von Hand geschrieben.

    Gruß Matt
    mr_xxl bedankt sich. 

  4. #4
    mr_xxl mr_xxl ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    Danke für den Code, das ist fast genau was ich brauche. Ich will den Index zurück geben: in deinem Code habe public static eineStatischeFunktion Methode gemacht und es geht nicht. Bei mir sollen je nach Index unterschiedliche Berechnungen ausgeführt werden. Ich habe eine Methode mit if-Anweisung wo als Bedingung Index ist.
     

  5. #5
    uwe_reiner uwe_reiner ist offline Grünschnabel
    Registriert seit
    Aug 2010
    Beiträge
    2
    Hallo,
    Deine ComboBox ist doch bestimt ein Object, dh eine Instanz einer Klasse. Und wenn Du dann mit einer statischen Methode darauf zugreifen willst, hast Du keine Chancen, denn die statischen Methoden kennen nur die Klassen, nicht aber die Instanz-Variablen.
    Ich hoffe, der Tipp hilft Dir.
     

  6. #6
    Matt297 Matt297 ist offline Mitglied Gold
    Registriert seit
    Oct 2008
    Beiträge
    172
    Dann gib der statischen Funktion doch einfach einen Rückgabewert, also z.B.:

    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    public static int eineStatischeFunktion(int index) {
      switch (index) {
        case 0:
          return 5; //einfach irgendeine zahl, hier muss deine index-abhängige berechnung stattfinden
          break; //der vollständigkeit halber
        case 1:
          return 2; //s.o.
          break; //s.o.
        //das kann hier endlos so weitergehen
      }
    }

    Warum muss es denn eigentlich eine statische Funktion sein? Greifst du aus mehreren verschiedenen Klassen darauf zu? Ansonsten bau doch einfach eine nicht-statische Funktion in der Klasse in der der ActionListener implementiert wird. Die kann genauso aufgebaut sein, also mit Parameter und Rückgabewert...

    Gruß
    Matt
    mr_xxl bedankt sich. 

  7. #7
    mr_xxl mr_xxl ist offline Rookie
    Registriert seit
    Aug 2010
    Beiträge
    5
    ok ich lasse es mit static sein, was auch logisch ist, aber wie kann ich dann die folgende Methode in statische Methode ausgeben oder besser gesagt ich brauche ergebnis. Die methode sieht so aus:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    
    public double [] Do()throws IOException{
            int length =87;
            double ergebnis[]=new double[length];
             double a[]=new double[length];
              int index=VersuchView.Wert();
            double [][] werte = Daten ();
     
       if(index==0){
             for ( int i=0;i <length;i++){
              a[i]=Berechnung1
             }
       }
     
        if(index==1){
              for ( int i=0;i <length;i++){
              a[i]=Berchnung2; 
              }
        }
     
        if(index==2){
             for ( int i=0;i <length;i++){
            a[i]=Berechnung3;
         }
      }
              
       for ( int i=0;i <length;i++){
                 double b = werte [6][i];
                 double c= werte[7][i];
                 
    ergebnis[i]=a[i]+b+c;
        }
       return ergebnis;
     }

    Habe auch die beispiele wo die non-static Methodeausgeben()einen Namen ausgeben soll und in main wird dem Namen z.B. Wolf diese Methode angehängt.
    Code :
    1
    
    Wolf.ausgeben();
    wie kann ich hie diese Methode ausführen?
     

Ähnliche Themen

  1. Antworten: 7
    Letzter Beitrag: 10.06.10, 23:16
  2. Antworten: 5
    Letzter Beitrag: 30.09.08, 16:22
  3. Drupal static page mit unterseiten, alle auf die static page verweisend
    Von flokli im Forum Content Management Systeme (CMS)
    Antworten: 0
    Letzter Beitrag: 07.06.08, 21:04
  4. Frage zu static und static const
    Von Xebov im Forum C/C++
    Antworten: 5
    Letzter Beitrag: 12.07.05, 09:38
  5. Antworten: 8
    Letzter Beitrag: 25.05.04, 15:31