Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-01-2007, 20:12   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2002
Ort: Illmensee
Beiträge: 17
Externe SWF mit Rand/Hintergrund: Position und Breite haben andere Referenzpunkte

Hi,

nachdem ich mit loadmovie eine swf in einen MC geladen habe, möchte ich den externen Film entweder auf die gesamte Breite der Bühne skalieren oder oben links genau auf 0,0 positionieren.
Eigentlich nicht schwer, doch es ergibt sich folgendes Problem:

Die externen swfs enthalten ausschließlich Objekte, die nicht ganz bis an den Rand der Bühne reichen. Das lässt sich leider auch nicht ändern, da die externen swfs alle schon existieren und sehr zahlreich sind.

mc._width und mc._height scheinen allerdings als Referenzpunkt alle Objekte bis auf den Hintergrund zu beinhalten.
mc._x und mc._y bezieht sich dagegen auf den Nullpunkt der Bühne des eingebundenen swfs, also auf die rechte obere Ecke des Hintergrunds.

Wie ist es nun möglich den externen swf auf 0,0 zu positionieren, trotz der Tatsache, dass in jenem externen Clip ein "Rand" besteht, d.h. nur Hintergrund ohne Objekte?
Alternativ würde es ausreichen die Gesamtbreite des externen swfs herauszufinde, d.h. die stage.width.

Ich habe eine Beispieldatei angehängt - damit sollte sofort klar werden wo das Problem liegt.

Vielen Dank für jede Hilfe,
Jack
Angehängte Dateien
Dateityp: rar position.rar (10,3 KB, 6x aufgerufen)
JacktheCrack ist offline   Mit Zitat antworten
Alt 16-01-2007, 21:15   #2 (permalink)
_gir
 
Benutzerbild von supasuka
 
Registriert seit: Jul 2006
Ort: Karlsruhe
Beiträge: 957
Hallo.

Das Problem ist, dass der Clip im dem zu ladenden Clip nicht auf 0/0 ausgerichtet ist. Da bringt auch Stage.width nix, weil nur der Inhalt des externen SWF's nicht aber der Hintergrund geladen wird.
Ausserdem hast du sowieso nur Zugriff auf die width und height-eigenschaften deines Hauptmovies.

Wenn der "Rand" bei allen Files gleich ist, würde ich einfach den Mc "movie" um genau die Breite des Randes nach links und nach oben verschieben (aso in den Minus-Bereich).
Wenn alle verschiedene Ränder haben, musst du die Inhalte jeweils neu positionieren, anders wird's wohl nicht gehen.
__________________
Gruß, Simon

swblog* | Invader Zim
supasuka ist offline   Mit Zitat antworten
Alt 16-01-2007, 22:13   #3 (permalink)
Neuer User
 
Registriert seit: Aug 2002
Ort: Illmensee
Beiträge: 17
Wenn ich die Breite des MCs mit mc._width abfrage, gibt er mir aber doch die Breite des Objekts (und nicht die Breite des Hintergrundes), d.h. er "misst" quasi von der einen Seite des Rechtecks bis zur anderen.
Wenn ich allerdings bei dem selben MC mit mc._x die Position abfrage oder verändern will, ist der Referenzpunkt nicht mehr die linke Seite des Rechtecks, sondern in der Tat der 0/0 Punkt des externen SWFs, d.h. die linke obere Ecke des Hintergrundes.

Hier wird scheinbar mit zweierlei Maß gemessen. Seid ihr sicher, dass man das nicht umgehen kann? Es wär ne Menge Arbeit jedes einzelne der externen SWFs anzupassen...

Gibt es denn nicht z.B. die Möglichkeit die Breite der Bühne des externen SWFs zu messen?

Jack
JacktheCrack ist offline   Mit Zitat antworten
Alt 16-01-2007, 22:22   #4 (permalink)
_gir
 
Benutzerbild von supasuka
 
Registriert seit: Jul 2006
Ort: Karlsruhe
Beiträge: 957
Nein, die gibt es nicht.
Zumindest hab ichs noch nicht gesehn.

Ist halt immer blöd wenn man schlampige Arbeiten wo einbinden soll...
__________________
Gruß, Simon

swblog* | Invader Zim
supasuka 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 09:03 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele