F
Fränky
Gast
Hallo,
habe ein Problem und komme nicht mehr weiter. Hoffe mir kann jemand helfen.
Möglicherweise ist es banal, aber ich stehe auf der Leitung.
Aus einem größeren Zusammenhang habe ich unten das Problem total abgespeckt fundamental
dargestellt.
Die Klasse MausSteuerung enthält die Methode "setSWMode" welche einfach nur bei Aufruf durch
einen Button einer anderen Klasse zwischen 1 und 2 hin und her schaltet. Dies funktioniert auch
innerhalb dieser Methode. Mit SW soll dann in der "mousePressed" event Methode auf 1 bzw. 2
unterschieden werden, und hier ist aber der Wert immer 1, wie im Konstruktor initialisiert
wurde.
Gruß
habe ein Problem und komme nicht mehr weiter. Hoffe mir kann jemand helfen.
Möglicherweise ist es banal, aber ich stehe auf der Leitung.
Aus einem größeren Zusammenhang habe ich unten das Problem total abgespeckt fundamental
dargestellt.
Die Klasse MausSteuerung enthält die Methode "setSWMode" welche einfach nur bei Aufruf durch
einen Button einer anderen Klasse zwischen 1 und 2 hin und her schaltet. Dies funktioniert auch
innerhalb dieser Methode. Mit SW soll dann in der "mousePressed" event Methode auf 1 bzw. 2
unterschieden werden, und hier ist aber der Wert immer 1, wie im Konstruktor initialisiert
wurde.
Gruß
Code:
import java.awt.*;
import java.awt.event.*;
public class MausSteuerung implements MouseListener,
MouseMotionListener {
private byte SW;
public MausSteuerung() {
SW = 1;
}
public void setSWMode() {
if ( SW == 1 )
SW = 2;
else
SW = 1;
System.out.println(SW); // Hier wird SW noch richtig initialisiert wenn SetSWMode
// von einer anderen Klasse aufgerufen wird.
}
public void mousePressed(MouseEvent evt) {
System.out.println("in Mouse event");
System.out.println(SW); // Ab hier wird SW immer nur mit 1 initialisiert wie
// standartmäßig im Konstruktor
gu.FB.getMouseKoord(evt.getX(),evt.getY());
if ( SW == 1 ) {
System.out.println(" Sw=1");
}
if ( SW == 2 ) { // Dieser Fall wird nicht betreten
System.out.println(" sw=2");
}
}
public void mouseMoved(MouseEvent evt) {}
public void mouseEntered(MouseEvent evt) {}
public void mouseExited(MouseEvent evt) {}
public void mouseReleased(MouseEvent evt) {}
public void mouseDragged(MouseEvent evt) {}
public void mouseClicked(MouseEvent evt) {}
}