Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-07-2007, 13:55   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2007
Beiträge: 10
Ausgabe von Begrenzen oder in Scrollbereich packen

Hallo,

ich habe ein Film erstellt der einen Datenbankalgorithmus visualisiert. Nun ist die ganze Sache fertig bis auf die Ausgabe. Die Funktion dafür sieht so aus:
Code:
function show_buckets() {
	startY = 30;
	for(k = 0; k < buckets.length; k++) {
		// Buckets auf die Bühne bringen
		this.attachMovie("bucket", "bucket"+k, getNextHighestDepth());
		this["bucket"+k]._x = 10;
		this["bucket"+k]._y = startY;
		this["bucket"+k].head.text = buckets[k][0];
		this["bucket"+k].input_01.text = buckets[k][1];
		this["bucket"+k].input_02.text = buckets[k][2];
		startY = startY + 25;
	};
	old_buckets = buckets;
};
Das Problem ist dass es irgendwann mal ziemlich viele Buckets werden so dass der Platz nicht mehr ausreicht. Hat jemand eine Idee wie ich das Problem lösen könnte? Eventuell mit einem Bereich zum scrollen? Ich steh leider etwas unter Zeitdruck, das Projekt wird morgen früh präsentiert.

Gruß, toby
tobyff ist offline   Mit Zitat antworten
Alt 11-07-2007, 14:40   #2 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
hi,
attach die mc's doch einfach alle in einen extra dafür angelegten container mc. dann haste ja nur einen einzigen movieclip zum srollen.. egal wieviel einträge. das ganze kannste ja noch unter eine maske packen und schön scrollen...
zum thema scrollen wirst du hier im forum schon gneug beiträge finden.. stichwort Suchen button hier im forum

cheers, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 11-07-2007, 16:30   #3 (permalink)
Neuer User
 
Registriert seit: Jul 2007
Beiträge: 10
Hallo Salazar,

danke für den Tip, hab das gerade versucht umzusetzen, funktioniert auch fast. Habe in einem anderen Forum eine Scrollfunktion gefunden die ich nutzen konnte. Muss mich jetzt nur mal mit dem Punktoperator auseinander setzen.

Habe mit

Code:
// Container auf die Bühne bringen
this.attachMovie("container", "container", getNextHighestDepth());
this["container"]._x = 90;
this["container"]._y = 20;
den Container integriert. Kann ja nun nicht mehr einfach mit

Code:
this.attachMovie("bucket", "bucket"+k, getNextHighestDepth());
this["bucket"+k]._x = 10;
this["bucket"+k]._y = startY;
arbeiten. Bei

Code:
this["container"].attachMovie("bucket", "bucket"+k, getNextHighestDepth());
this["container"].["bucket"+k]._x = 10;
this["container"].["bucket"+k]._y = startY;
gibt es aber Proteste von Flash. Mal sehen wie das richtig funktioniert...

Danke nochmal, toby
tobyff ist offline   Mit Zitat antworten
Alt 11-07-2007, 17:02   #4 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
kleiner syntax fehler:
PHP-Code:
this["container"].["bucket"+k
der punkt ist zuviel!
PHP-Code:
this["container"]["bucket"+k
cheers, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!
salazar ist offline   Mit Zitat antworten
Alt 11-07-2007, 17:45   #5 (permalink)
Neuer User
 
Registriert seit: Jul 2007
Beiträge: 10
Das gibt noch ein Danke. Mal sehen wie viele Du noch sammeln kannst, die nächste Gelegenheit gibt es jetzt:

Das integrieren der Elemente scheint zu funktionieren, Fehlermeldungen gibt es nicht mehr. Allerdings habe ich keinen Einfluss mehr auf die Position an der die Elemente eingefügt werden. Zur Erinnerung:

PHP-Code:
function show_buckets() {
    
startY = -80;
    for(
0buckets.lengthk++) {
        
// Buckets auf die Bühne bringen
        
this["container"].attachMovie("bucket""bucket"+kgetNextHighestDepth());
        
this["container"]["bucket"+k]._x 20;
        
this["container"]["bucket"+k]._y startY;
        
this["container"]["bucket"+k].head.text buckets[k][0];
        
this["container"]["bucket"+k].input_01.text buckets[k][1];
        
this["container"]["bucket"+k].input_02.text buckets[k][2];
        
startY startY 25;
    };
    
old_buckets buckets;
}; 
Mit startY werden die Buckets eigentlich untereinander positioniert. Nun hat es aber den Anschein als funktioniert das nicht mehr?! Die Buckets werden immer an die gleiche Y-Position geschrieben, nämlich -80. Das startY=startY+25 hat keine Wirkung mehr.

Geändert von tobyff (11-07-2007 um 17:47 Uhr)
tobyff ist offline   Mit Zitat antworten
Alt 11-07-2007, 21:48   #6 (permalink)
experience++;
 
Benutzerbild von salazar
 
Registriert seit: Jul 2002
Ort: Düsseldorf
Beiträge: 11.347
danke.. genug gesammelt.
aber wieder zum thema. haste dir mal
PHP-Code:
trace(startY); 
tracen lassen?! muß doch funktionieren?!
ich denke einfach mal das es an dieser zeile liegt:
PHP-Code:
this["container"].attachMovie("bucket""bucket"+kgetNextHighestDepth()); 
das sollte natürlich so aussehen:
PHP-Code:
this["container"].attachMovie("bucket""bucket"+kthis["container"].getNextHighestDepth()); 
cheers, sal
__________________
Bitte keine Flashfragen an mich schicken. Dafür ist ja das Forum da! Das betrifft auch Profilnachrichten.
Chuck Norris hat den Flash Player für alle mobilen Betriebssysteme!

Geändert von salazar (11-07-2007 um 21:50 Uhr)
salazar ist offline   Mit Zitat antworten
Alt 11-07-2007, 21:55   #7 (permalink)
Neuer User
 
Registriert seit: Jul 2007
Beiträge: 10
EDIT: Probier ich gleich mal aus, sonst:

Ja, gibt bei 5 Buckets folgendes aus:

-55
-30
-5
20
45

Also wie gewollt. Das trace() hab ich übrigens nach dem startY +=25; platziert.

Gruß, toby
tobyff 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 16:04 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele