ERLEDIGT
JA
JA
ANTWORTEN
9
9
ZUGRIFFE
546
546
EMPFEHLEN
-
Hallo Java Gemeinde,
ich habe diesmal ein komisches Problem wie ich finde. Versuche über eine Methode einen Counter hoch und runter zu setzen, jedoch scheint es so als ob zwei verschiedene Varaiblen angesprochen werden. Kann mir einer eine Tipp geben, stehe irgendwie auf dem Schlauch.
hier die Methode
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
public class test{ private int count = 0; public void setCount(int wert,String vorzeichen) { if (vorzeichen.equals("+")) { count = count + wert; }else if(vorzeichen.equals("-")) { count = count - wert; } } }
Danke schon mal für eure Hilfe.
-
Soll ein counter für alle test Objekte existieren. Oder je test Objekt einer?Versuche über eine Methode einen Counter hoch und runter zu setzen, jedoch scheint es so als ob zwei verschiedene Varaiblen angesprochen werden.
Wenn das erstere zutrifft musst du deinen counter als static deklarieren.
Gruß
RedWing"I'm not deaf, I'm ignoring you"
----
-
Hi,
ich weiss nicht was bei dir der Fehler ist, bei mir laeuft es.
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
public class Klasse01 extends JFrame { public static void main(String[] args) { Klasse01 k = new Klasse01(); k.setCount(2,"+"); k.setCount(1,"-"); System.out.println(k.getCount()); } private int count = 0; public void setCount(int wert,String vorzeichen) { if (vorzeichen.equals("+")) { count = count + wert; }else if(vorzeichen.equals("-")) { count = count - wert; } } public int getCount() { return count; } }MfG
illaX
-
Danke für eure Hilfe. Habs auch nochmal getestet und Funkioniert. Dann muss mein Problem wohl wo anders sein.
Also ich setze das ganze in einem ActionListener ein. Wenn auf einen Butten gedrückt wird, soll die Methode aufgerufen werden und counter geändert werden.
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 34 35 36 37 38 39 40 41 42
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class MyListener implements ActionListener{ private int count = 0; Data data; public void actionPerformed(ActionEvent arg0) { String com = arg0.getActionCommand(); if(com.equals("<")) { setCount(13,"-"); System.out.println(getCount()); }else if(com.equals(">")) { setCount(13,"+"); System.out.println(getCount()); } } public int getCount(){ return count; } public void setCount(int wert,String vorzeichen){ if (vorzeichen.equals("+")) { this.count = this.count + wert; }else if(vorzeichen.equals("-")) { this.count = this.count - wert; } } }
Irgendwie wird dann nicht mit der selben var gerechnet...
-
Also an deinem Listner liegt es wohl nicht, denn den haben wir ja jetzt erfolgreich getestet

Vllt. ein wengi code, wo du ihn verwendest.
*Edit Ok war zu vorreilig, aber dieser funktioniert einwandfrei.
Hier mal mein main
public static void main(String[] args) {
MyListener myListener = new MyListener();
myListener.actionPerformed(new ActionEvent(new Object(),0,"<",0));
myListener.actionPerformed(new ActionEvent(new Object(),0,">",0));
}
Ausgabe: 0
Geändert von illaX (23.01.06 um 14:22 Uhr)
MfG
illaX
-
Hier meine Buttons
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
private JButton getButVor(){ butVor = new JButton(); butVor.setText(">"); butVor.addActionListener(new MyListener()); return butVor; } private JButton getButZurueck(){ butZurueck = new JButton(); butZurueck.setText("<"); butZurueck.addActionListener(new MyListener()); return butZurueck; }
Diese werden dann meinem Frame im TableLayout platziert
Code :1 2 3 4 5 6 7 8
frame = new JFrame(); frame.getContentPane(); frame.setSize(600,500); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLayout(new TableLayout(size)); frame.add(getButLaden(),"2,30,11,2"); frame.add(getButEnde(),"26,36,30,2");
Mehr passiert so eigentlich nicht.
Muss ich mir bei Swing irgendwie aktuelle Referenzen zurückgeben lassen? Wenn ja wie? Weiß sonst nicht wo der Fehler ist
-
OK Fehler geufnden.
Du weisst beiden Buttons ein neues Object hinzu...
Entweder du erzeugst ein Attribut von deinen Listener und weisst dieses zu, was ich sinvoller finde. Oder du machst das attribut statisch, dafuer kannst du den Listener nur einmal verwenden (ist nicht gerade OOP freundlich)
MfG
illaX
-
Kannste mir ein Beipsiel geben wie ich ein Attribut erzeugen soll für meinen Listener?
** edit **
Ok habs hinbekommen
Instanz erzeugen
Code :1
MyListener navigation = new MyListener();
Zuweisen der Instanz des ActionListener
Code :1
butZurueck.addActionListener(navigation);
Vielen Dank für deine schnelle HilfeGeändert von xeal (23.01.06 um 14:34 Uhr)
-
OK habe mich wohl sehr schlecht ausgedrueckt. Lege zum Beispiel ein Objectattribut an.
private MyListener myListener;
und initialisiert du das im Konstruktor
myListener = new MyListener;
und adden
ind den Methoden getButVor() und getButZurueck
button.addActionListener(myListener);
anstatt
button.addActionListener(new MyListener());MfG
illaX
-
dann setz den Status bitte auf erledigt

*das wollte ich schon immer mal sagen
*
MfG
illaX
Ähnliche Themen
-
JavaScript Subtraktion
Von BolleF1 im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 21.01.11, 15:03 -
Subtraktion
Von psychomama im Forum Visual Basic 6.0Antworten: 3Letzter Beitrag: 29.08.10, 18:28 -
Matrizen Subtraktion in C
Von RuhrBoy im Forum C/C++Antworten: 2Letzter Beitrag: 25.11.09, 11:57 -
Subtraktion von Gleitkommazahlen?
Von hanni6al im Forum C/C++Antworten: 1Letzter Beitrag: 08.05.09, 20:09 -
MS Excel subtraktion
Von to_be im Forum Office-AnwendungenAntworten: 6Letzter Beitrag: 27.02.04, 08:17





Zitieren
Login





