Zurück   Flashforum > Flash > Flash erweitern > Komponenten und SmartClips

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 19-09-2008, 19:10   #1 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 3
Scrollpane auf voller Stage, Inhalt dynamisch und zentriert

Hallo Community

Ich versuche mal kurz, mein Problem zu schildern.
Ein Scrollpane:

Code:
Stage.align = "LT";
stop();
import mx.containers.ScrollPane;
this.createClassObject(ScrollPane,"mySP",1);

mySP.setSize(Stage.width,Stage.height);
mySP.hScrollPolicy = "off";
mySP.vScrollPolicy = "on";
mySP.vPageScrollSize = 190; //Menu + Header weg
mySP.vLineScrollSize = 190; //Menu + Header weg
mySP.setStyle("borderStyle","none");
mySP.contentPath = "center.swf";

function resize() {
	mySP.setSize(Stage.width,Stage.height);
}
var MainStage = new Object();
MainStage.onResize = function() {
	resize();
};
Stage.addListener(MainStage);
Durch den Code wird der Scrollpane immer auf die Größe des Browserfensters gesetzt. Das funktioniert soweit super.

Allerdings passt sich die Scrollpane nun nicht automatisch dem dynamischen Inhalt, der in "center.swf" geladen wird, an.

Center.swf läd weitere Dateien, die alle in diesem Clip "zentriert" werden.
Das Zentrieren direkt in der Scrollpane hat zu Fehlern geführt.
Bei einem Click auf die Komponente sprang der contantholder immer auf 0,0 und wurde nicht mehr zentriert.
Deshalb der Zwischenfilm "center" der dieses Problem löst.

Das Problem ist wie gesagt, dass ich, wenn ich innheralb der center.swf nun andere Filme dazu lade, die höher oder weniger hoch sind, der Scroller nicht automatisch angepasst wird.

Allerdings passt er den Scroller an, sobald ich den Browser skaliere, weil er dann Scrollerbreite und Höhe neu setzt und dabei wohl den Inhalt anpasst. Das müsste er aber doch auch können, ohne dass ich das Browserfenster resize? Wie?

Mit
redraw
update()
refreshPane()
usw.

bin ich bisher auch nicht weiter gekommen?
Was könnt ich übersehen haben?
Da es spät ist les ich mir den Text morgen früh nochmal durch, was ich hier geschrieben habe. Sorry für Rechschreibefehler usw... aber es ist spät, bin müde

Habe viel getract, sogar mit "onEnterFrame" zum testen probiert aber kein Ergebnis bekommen.
Vielleicht kennt jemand das Problem und weis die Lösung
Bin für alle Vorschläge dankbar.

lg Chris
Turrican ist offline   Mit Zitat antworten
Alt 19-09-2008, 22:31   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
->verschoben

Ich hab in solchen Fällen immer eine Kombination aus refreshPane, redraw und onEnterFrame-Event genommen, bspw.:
PHP-Code:
sc.contentPath "mcLeer";
this.onEnterFrame = function() {
        
delete this.onEnterFrame;
        
sc.refreshPane();
        
folgeFunktion();
}
folgeFunktion = function(){
        :
        :
        
//sc wurde befüllt, dann
        
this.onEnterFrame = function(){
                
delete this.onEnterFrame;
                
sc.redraw(true);
        }


Geändert von agedoubleju (19-09-2008 um 22:33 Uhr)
  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 aus.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



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

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


Copyright ©1999 – 2012 Marc Thiele