Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 09-12-2004, 15:06   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Beiträge: 16
Question ScrollPane mit Actionscript löschen

Hallo allerseits,

ich habe bisher nur eine "echt ätzende" Lösung für folgendes Problem. Es geht um die Components "ScrollPane" und "Label", die im UI Component Set (MX 2004) mitgeliefert werden.

In einer ScrollPane werden skriptgesteuert jede Menge Labels erzeugt (mit createClassObject), um irgendwelche Listendaten anzuzeigen. Zu einem späteren Zeitpunkt soll der Inhalt der ScrollPane "gelöscht" werden, um neue Informationen drüberzuschreiben. Die Menge der ScrollPanes ist nicht vorhersehbar, die der Labels auch nicht, es sind eher viele.

Das klingt einfach, aber Nüsse is! Meine erste Idee war, den gesamten Clip in der ScrollPane zu "vernichten", indem ich 'contentPath' erneut setze. Dummerweise, und im Widerspruch zur Dokumentation, versucht aber die AS-Anweisung "scrollPane.contentPath = 'einClipSymbol'" ausschließlich, die Datei 'einClipSymbol' zu laden(!) anstatt das Symbol in der Bibliothek. Setze ich contentPath im Inspector dagegen manuell, zeigt die Pane wie erwartet den Library-Clip an. "scrollpane.spContentHolder" kann man offenbar nicht einfach ändern, "content" ist sowieso nur read-only.

==> Wer dazu eine Lösung hat (nämlich Überschreiben des contentPath einer ScrollPane mit einem Bibliotheks-Clip zur Laufzeit), der würde mir schon extrem weiterhelfen! Actionscript sucht immer nach Dateien!

Also, das ging schonmal nicht so. Als zweite Lösung hoffte ich, irgendwo eine Collection zu finden, in der alle Elemente (Clips, UIObjects,...) einer Pane verzeichnet sind (um dann mit "for (props in scrollPane)" alle Komponenteninstanzen zu löschen, aber das probiere ich nun schon erfolglos seit drei Stunden.

==> Gibt es ein Array, das die erzeugten Komponenten speichert?

Mein Workaround wird nun sein, dass ich selbst ein Array mit Referenzen auf alle erzeugten Labels anlege, um sie dann Stück für Stück mit "destroyObject" löschen zu können. Aber das kann's ja wohl irgendwie nicht sein, und es zerschießt mir völlig meine Objektlogik... Ich will doch nur eine schöne neue weiße Fläche in einer ScrollPane haben ;-)

Jemand eine gute Idee dazu? (Ach ja: ich kann keine Drittanbieter-Komponenten hinzukaufen und die Zeit ist natürlich super-knapp)

Besten Dank!
awi64 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 06:22 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele