Beiträge: 167 Wohnort: Luxemburg Registriert: Feb 2007
Getter/Setter durch mehrere klassen
Moin Leutz,
tut mir Leid aber ich raffs einfach nicht...
ich hab nach Login (mySql) mehere "public static vars" in eine Klasse gespeichert um sie von dort aus Projektübergreifend nutzen zu können. (klappt 1A)
jetzt möchte ich mir eine Klasse mit funktionen schreiben die, wenn eine der userVars geändert wird, automatisch auslöst und den neuen Wert in die BD einträgt. In AS2 hab ich sowas über watch() gemacht, der ist ja aber leider verschwunden... :/
Mein Problem krieg ich diese "get & set geschichte" einfach nicht hin,
versuchs schon seit tagen...
Klappt das überhaupt so Klassenübergreifend? hat jemand einen Ansatz?
package
{
import flash.events.Event;
import flash.events.EventDispatcher;
public class Model extends EventDispatcher
{
private var _number:Number = 0;
public function Model():void
{
}
public function set number(value:Number):void
{
if( value == _number ) return;
_number=value;
this.dispatchEvent(new Event("wasAuchImmer"));
}
public function get number():Number
{
return _number;
}
}
}
lieber chips essen und danach voller zweifel sein, als voller zweifel chips essen...
public static var userId:String = "";
public static var userNick:String = "";
public static var userName:String = "";
public static var userPass:String = "";
public static var userSurname:String = "";
public static var userMail:String = "";
public static var userProfession:String = "";
public static var userDomain:String = "";
public static var userBirthdate:String = "";
public static var userStartdate:String = "";
public static var userStreet:String = "";
public static var userPostalcode:String = "";
public static var userCity:String = "";
public static var userCountry:String = "";
public static var userLastlog:String = "";
public static var userCredits:Number = 0;
public static var userTransactionVolume:Number= 0;
public static var userActive:Boolean = false;
public static var userVisible:Boolean = false;
}
}
public class Model extends EventDispatcher
{
public static const MYVAR_CHANGED : String = "myVarChanged";
public static var _instance : Model;
private var _myVar : Number = 0;
public function Model( enforcer:Enforcer )
{
super();
}
public static function getInstance():Model
{
if( _instance == null ) _instance = new Model( new Enforcer( ) );
return _instance;
}
public function get myVar():Number
{
return this._myVar;
}
public function set myVar(value:Number):void
{
if( value == this._myVar ) return;
this._myVar = value;
this.dispatchEvent( new Event( Model.MYVAR_CHANGED ) );
}