Movie in Iframe per Button öffenen!

"Ein Problem kommt selten allein"! *lach* ... also folgendes:

Wie kann ich dafür sorgen das alle eingelesenen swf Files unterschiedlicher Größe alle in dem Anzeigefenster angezeigt werden? Denn bei manchen sieht man nur ein Teil vom ganzen!
 
...Nach ewigkeiten an probiern hab ich jetzt keine Lust mehr darauf! So frag ich jetzt euch! Also ich habe MCdropzone auf meiner Bühnfläche (_x=80;y=110;_w=665;_h=453;scalex,y=100) in der ein leerer MCcontainer enthalten ist! Wie bekomme ich meinen button dazu das er nach dem reinladen die exakte größe von MCdropzone annimmt, sodass beide quasi übereinanderliegen und nix vom Film fehlt! Die Filme die ich reinlade sind meistens größer als MCdropzone.

on(release)
{
_root.dropzone.container.loadMovie("files/peter.swf");
//was muss hier rein?

}

thx
 
Hi,

die meissten Container - Konstruktionen arbeiten mit sogenannten 0px Containern, was meint , das sie leer sind, und keine Ausdehnung besitzen.
Wenn man nun in einen solchen Container andere MC´s hineinlädt, gibt es ersteinmal keine native Funktion, um festzustellen, wann der Container komplett 'gefüllt' ist, der nachzuladende MC also geladen und angekommen ist.
Um sich zu behelfen startet man eine sogenannte onEnterFrame Funktion, also eine Funktion die je nach Framerate zB 12 * pro Sekunde abläuft.
Diese Funktion überprüft dann, ob der COntainer MC eine Ausdehnung besitzt, also != 0 ist. Wenn das der Fall ist, dann führt die Funktion Befehle zB zur Grössenänderung aus, und terminiert sich selbst.
In deinem Fall ist der Container aber nicht 0px, da ja dein Kreuz darin ist.
Also musst du folgendes coden:

PHP:
on(release)
{
_root.dropzone.container.loadMovie("files/peter.swf");
 delete _root.dropzone.container.onEnterFrame ;
_root.dropzone.container.onEnterFrame = function()
{
 if ((_root.dropzone.container._heigth >453) ||(_root.dropzone.container._width>665))
 {
 _root.dropzone.container._heigth = 453;
 _root.dropzone.container._width = 665;
 delete _root.dropzone.container.onEnterFrame ;
 }
}

}

Dieser Code verzerrt deine Filme aber wahrscheinlich - für eine verzerrungsfreie Skalierung brauchst du Mathematik und ein bisschen Nachdenken oder die Suchfunktion oder Google..

Grüsse
B
 
Also das Script ist mir doch recht ungeheuer! Ich versuche es mal nachzuvollziehen! BITTE korregiert mich!

1.es wird petern in den MCcontainer reingeladen
2. beim eintreten in den 1.Frame von MCcontainer wird er gelöscht!? <-- häh
3. in MCcontainer wird eine Funktion ausgeführt die gleich mitdefiniert wird...wo halt abgefragt wird ob der MCcontainer halt die größen hat die er soll ... naja ... wenn nicht bekommt er halt die größe die er soll! In der gleichen funktion wird aber MCcontainer gelöscht! <-- wieso?
 
Sorry,

aber du hast das alles falsch verstanden. Das ist hier auch nicht der Ort, um dich mit den grundlegenden Funktionen wie Event und Objekt Modell in ECMA Sprachen vertraut zu machen.
Nur soviel: Ein OnEnterFrame ist ein Ereignis - dein Film hat eine Abspielrate von 12 Frames pro Sekunde, unabhängig davon, ob eine Zeitreihe abgespielt wird odder nicht - das ist vergleichbar mit dem Sekundenzeiger der Uhr.
Bei einer Framerate von 12 FPS hast du 12 Ereignisse pro Sekunde, onEnterFrame meint nun, das du bei jedem dieser Ereignisse den in den geschweiften Klammern folgenden Code ausführst. Also ziemlich oft. Das verbraucht Prozessorkapazität. Wir sollten also ökonomisch vorgehen, und den onEnterFrame Block auch nur dann ausführen lassen, wenn wir ihn brauchen. Wir sollten ihn also löschen wenn er seine Schuldigkeit getan hat.
Nicht aber den einzuladenenden MC, sondern den Event Listener onEnterFrame - den Unterschied zwischen Objekt und Event musst du schon selber kapieren.


Grüsse
B
 
Zurück