Archiv für die Kategorie „Allgemeines“

Zugriff auf und Parameter eigener Elemente

Mittwoch, 5. November 2008

Oftmals werden eigene Elemente in folgender Form aufgerufen:
<MX:meinelement id=”test” …. source=”xxxx” …/>
und es soll der angegeben Parameter source übergeben werden. Meistenteils soll der Parameter source nicht nur übergeben, sondern ggf. auch mal ausgelesen werden können, weil meinelement den Inhalt dieses Parameter ja eventuell auch ändern kann:
Alert.show(”Testausgabe”, test.source);

Um sich in meinelement nun auf source beziehen zu können (sowohl lesend, als auch schreibend) ist dort nun folgendes erforderlich:

        public var __source:String = “”;   // Definition, damit ein globaler Zugriff erfolgen kann
        public function set source(source:String): void {
            if (source) {
                __source = source;
            }
        }
        public function get source():String {
            return __source;
        }

Fertig! Damit kann innerhalb von meinelement nun auf __source zugegriffen werden. Nach Start des Elements steht der Wert aus dem Aufruf zur Verfügung und kann genutzt werden.

Modulübergreifender Funktionsaufruf (2)

Mittwoch, 5. November 2008

Oftmals werden eigene Elemente in folgender Form aufgerufen:
<MX:meinelement id=”test” …. source=”xxxx” CLSClicked=”fkt_click()” …/>
(auf den Paramter “source” gehen wir in einem anderen Beitrag ein)
und es soll z.B. durch ein Button-Click innerhalb des meinelement die im rufenden Modul enthaltene Funktion fkt_click() ausgeführt werden.

Im Element bzw. in der Komponente meinelement brauch nun nur der Event-Name: CLSClicked definiert werden … dies erfolgt einfach in der folgenden Form:

<mx:Metadata>
[Event(name="CLSClicked", type="flash.events.Event")]
</mx:Metadata>

Nun nur noch das Event dispatchen - fertig:

public function clsclick():void {
       dispatchEvent(new Event(”CLSClicked”));
       } 
….
<mx:Button label=”Button” width=”50″ click=”clsclick()”/>