onSelfEvent (load)
{
Stage.scaleMode = "noScale";
//Skalierung für die ganze Bühne abschalten.
Stage.align = "TL";
/* Die aktuelle Ausrichtung der SWF-Datei im Player oder Browser.
In diesem Fall TL(Top-Left).*/
var lstrn:Listener = new Object();
lstrn.onResize = function()
{
Inhalt._x = Stage.width/2;
Inhalt._y = Stage.height/2;
// der Sprite Inhalt, der nicht skaliert werden soll,
// wird horizontal und vertikal in die Mitte des Flash-Filmes gesetzt.
no._x = Stage.width-(no._width/2);
no._y = no._height/2;
// der Sprite no, der nicht skaliert werden soll, wird in die
// rechte obere Ecke gesetzt.
o._x = Stage.width-(o._width/2);
o._y = Stage.height/2;
// der Sprite o, der nicht skaliert werden soll, wird
// rechts in der Mitte angezeigt
so._x = Stage.width-(so._width/2);
so._y = Stage.height-(so._height/2);
// der Sprite so, der nicht skaliert werden soll, wird in
// die rechte untere Ecke gesetzt
s._x = Stage.width/2;
s._y = Stage.height-(s._height/2);
// der Sprite s, der nicht skaliert werden soll, wird
// unten in der Mitte angezeigt
w._x = w._width/2;
w._y = Stage.height/2;
// der Sprite w, der nicht skaliert werden soll, wird
// links in der Mitte angezeigt
sw._x = sw._width/2;
sw._y = Stage.height-(sw._height/2);
// der Sprite sw, der nicht skaliert werden soll, wird in die
// linke untere Ecke gesetzt
nw._x = nw._width/2;
nw._y = nw._height/2;
// der Sprite nw, der nicht skaliert werden soll, wird in
// die linke obere Ecke gesetzt
n._x = Stage.width/2;
n._y = n._height/2;
// der Sprite n, der nicht skaliert werden soll, wird
// oben in der Mitte angezeigt
//
}; // ende der onResize function
Stage.addListener(lstrn);
lstrn.onResize()
}
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von michaela: 12.01.2010 12:09.
Hi, eine PHP gehört nicht in den Script-Bereich!
Schau Dir das Beispiel nochmal richtig an.
Zeile 1: php-tag entfernen!
Zeile 3: scaleMode=" " (noScale heißt = NICHT skalieren! )
Zeile 60: php-Tag entfernen! Geschweifte Klammer bleibt!!!
Bei Deinem Format überlegen, ob die Ausrichtung TL oder CL sein soll.
TIP: Bis die neue Seite online ist, macht in Eure alte ein "nichtabmahnfähiges" Impressum rein!
__________________ SwishMax 3 Deu
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von ilro: 12.01.2010 16:19.
Wenn Du die Anweisung "noScale" gibst, dann heißt das:
Der Film (stage - Bühne) soll nicht skaliert (in der Größe verändert) werden.
Formatfüllend heißt eigentlich, das ganze Browser-Fenster ausnutzen. Dein Film-Format 10/6 füllt in der Höhe nicht ein Browser-Fenster (Bsp.1280/1024 oder 1024/768) aus. Wenn Du Höhe und Breite anpasst, verzerrt sich alles!
"TL" heißt TOP-LEFT( oben links)- Ausrichtung.
__________________ SwishMax 3 Deu
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von ilro: 12.01.2010 17:32.
@michaela
lese bitte nochmal ilro - Antwort! Das ist schon richtig! Und Deine Annahme iss falsch!
Das Bild scaliert sich - Dein Menü nicht! Da kommst du nicht drum herum das So umzusetzten wie dir das vorgeschlagen wurde!
Dein Problem ist ein ganz anderes!
1. wie das Bild in deinen Container geladen wird um Höhe und Breite vei der Veränderung des Browsers erstmal auszulesen!
2. Mathematik-Kenntnisse, um das Bild immer in Vollscreenmodus zuhalten, was gleichzeitig in der Mitte der gesamten Bühne geladen wird und das ganze Proportional.
Verändere mal Deine Bühnengröße und schau mal zuerst, wie das Bild geladen wird. Wenn Du es schaffst bei einer Filmgröße (z.Bsp. 500 x 800) das Bild so zu laden, wie du den Browser manuell verändern würdest, dann iss Deine halbe Miete schon gegessen!
3. solltest Du auch Fehler erkennen und nicht 1zu1 Kopien in Deinem Film reinsetzten. Das geht in bestimmten Fällen in die Hose!
ja genau so soll es aussehen. Aber wie hast du das hinbekommen?
Was muss ich ändern das es bei mir auch klappt`? Fange leider erst an mich mit SwishMax2 zu beschäftigen... aber so richtig blicke ich da noch nicht lang...
Hatte seinen Grund weshalb ich dir das fertige Script nicht als swi gepostet habe. Lernst ja sonst nix!
Schau Dir erstmal den MovieClipLoader (Klasse) im Sprite "Bild" an.
Nehmen wir mal an Dein Bild hat eine Auflößung von 600 x 300 px und Dein Film eine Größe von 100 x 600px. Dann mußt du es so machen das das Bild formfüllend in Deinem Film passt ohne zu verzerren!
Das bedeutet das das Bild eventuell in der Breite größer ist als die Höhe und rechts abgeschnitten wird.
(Da du das Bild in der selben Auflösung gemacht hast wie Dein Film, fallen paar Kriterien weg, aber das ist nicht dynamisch und manche Bilder müssen ewig immer in Photobearbeitungsprogrammen angepasst werden, Deswegen erkläre ich Dir mal wie Du gar nix an den Bildern verändern brauchst ohne ein Programm zu benutzen und trotzdem der selbe Effekt entsteht)
Jetzt mußt Du nur noch das Bild Mittig in Deinem Film positionieren, weil grundsätzlich Filme die extern geladen werden den Ankerpunkt links oben haben!
OK soweit?
Mittig richtest Du den Film in Deinem Fall so aus!
target._x = Stage.width /2 - target._width /2;
target._y = Stage.height /2 - target._height /2
das heißt:
(target._x = Stage.width /2, target._y = Stage.height /2)
x und y Koordinaten befinden sich in der Mitte! OK?
jetzt würde der Film in der Mitte geladen werden, wobei du ja nur die hälfte siehst, also Mußt Du noch minus der Filmbreite und minus der Filmhöhe abziehen damit der Film wieder passgenau auf der Bühne positioniert wird. Somit sitzt der Ankerpunkt des Bildes in der Mitte der Bühne und jeder zoom der proportional zum Bild ist, wirkt sich nach links und rechts sowie nach oben und nach unten aus!
Entferne mal alles in der myL.onLoadInit = function(target) { und setz mal das oben ein! Und teste mal wie sich Bilder verhalten die Du reinlädst. OK?
Wenn Du das kapiert hast, dann solltest Du dir mal mathematisch Gedanken machen, wie das Bild in einer größeren Auflösung proportional formfüllend in der Ansicht reingeladen wird!
Nur noch schnell als Hilfe!
Vor dem Scrippt, wenn es bei dir funzt kommt die Berechnung rein!
sca = target._width / /Stage.width; ( nicht das: _parent.groesse._width;)
target._width /= sca;
target._height /= sca;
fast richtig! Doch was fehlt?
Berechnung der Höhe und eine if Abfrage!
zum Schluß wenn alles funzt.... später!
- kommt das Script dann bei der Veränderung der Bühne in der Szene unter der onResize = function auch rein.
__________________ Es gibt nichts, was es nicht gibt! Alle Wege führen nach ROM!
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von iseye: 13.01.2010 13:48.
Hi, ja mit dem lernen hast du schon recht, bin alllerdings auch eher ne niete in mathe und co. Bin bei swish gelandet weil es ja recht einfach sein soll.
So, erstes probelm: Schau Dir erstmal den MovieClipLoader (Klasse) im Sprite "Bild" an.
Doch im Container Hintergrundbild! Da sitzt der MoviClip (Sprite oder Container genannt).
Das aus der Datenbank ist eine Anordnung der Container oder MC / Sprite mit festen Parametern bei Veränderung des Browsers!
Damit kommst Du nicht weit, denn Du mußt ja das Bild noch scalieren, so das es immer füllend im Browser sitzt!!
__________________ Es gibt nichts, was es nicht gibt! Alle Wege führen nach ROM!
function loadPicResized(url){
myL = new MovieClipLoader();
myL.onLoadInit = function(target){ // fertig geladen. mach mit dem bild was du willst. :D
target._parent.tf.text = "";
target._x = Stage.width /2 - traget._width /2;
target._y = Stage.height /2 - traget._height /2;
};
myL.onLoadProgress = function(target, loadedBytes, totalBytes) { // während des ladens.....
loaded = Math.round(100/totalBytes*loadedBytes);
target._parent.tf.text = loaded + " %";
};
myL.onLoadError = function(target, errorCode) {
switch (errorCode) {
case 'URLNotFound' :
target._parent.tf.text = "Das Bild ist nicht verfügbar.";
break;
case 'LoadNeverCompleted' :
target._parent.tf.text = "Das Bild konnte nicht zuende geladen werden";
break;
};
};
myL.loadClip(url,halter);
}
onSelfEvent (load){loadPicResized("http://lichtwanne.de/hgb/1.jpg");
}
Habe jetzt den Code eingegeben, aber noch keine änderung.
Was meinst du damit?
"Entferne mal alles in der myL.onLoadInit = function(target) { und setz mal das oben ein! Und teste mal wie sich Bilder verhalten die Du reinlädst. OK?
"
danke und sorry bin halt mehr der grafik verfallen, hatte früher zwar mal was mit html gemacht... aber das ist schon ewig her....
Mach mal das Bild kleiner (Bildgröße) und teste es mal mit dem Script und einmal ohne! Dann verstehst Du es! Da bin ich mir dann Sicher!
Hatte ich aber geschrieben! lesen!
__________________ Es gibt nichts, was es nicht gibt! Alle Wege führen nach ROM!
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von iseye: 13.01.2010 19:45.