Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 03-05-2007, 12:56   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
Problem bei Skalierung von MC durch AS Funktion

Grüß euch Jungs...

hab wieder einmal ein Problem mit der Ausrichtung von einem MC

Folgender Aufbau:

ein MC in quadratischer Form der einen zweiten MC (picmc) enthällt in den bei Rollover ein Bild geladen werden soll. Das ganze ist noch statisch animiert.

Das laden des Bildes funktioniert einwandfrei aber es wird falsch skaliert und am falschen Platz ausgegeben.

Jegliche Änderungen der Positionierungen etc. durch meine Funktion lassen das Bild einfach verschwinden... also der MC ist noch da (laut trace auch an der definierten Position) aber das Bild wird nicht mehr angezeigt...

vielleicht kann mir jemand helfen

anbei die Funktion:

ActionScript:
  1. function loadpic(mc,bild)
  2. {
  3. _root[mc].onRollOver = function()
  4. {
  5.  
  6.     trace("Rollover auf: "+mc);
  7.     _root[mc].gotoAndPlay(2);
  8.     _root[mc].picmc._visible=true;
  9.     _root[mc].picmc.loadMovie(bild);
  10.     this.onEnterFrame=function()
  11.     {
  12.     geladen = _root[mc].picmc.getBytesLoaded;
  13.     zuladen = _root[mc].picmc.getBytesTotal;
  14.     }
  15.     if (geladen >= zuladen)
  16.     {
  17.         trace("X: "+_root[mc].picmc._x);
  18.         trace("Y: "+_root[mc].picmc._y);
  19.         _root[mc].picmc._x=62.2;
  20.         //_root[mc].picmc._y=-24.1;
  21.         //_root[mc].picmc._width=96;
  22.         //_root[mc].picmc._height=62;
  23.     }
  24. }
  25. _root[mc].onRollOut = function()
  26. {
  27.     _root[mc].gotoAndPlay(1);
  28.     _root[mc].picmc._visible=false;
  29. }
  30. }
  31. loadpic("dotmc1","testpic1.jpg");

greez
D@luxe
D@luxe ist offline   Mit Zitat antworten
Alt 03-05-2007, 13:01   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Tag!

Hinter getBytesLoaded und und getBytesTotal fehlen die Klammern. Außerdem besser so abfragen:
PHP-Code:
if (geladen >= zuladen && geladen >12
und das onEnterFrame auch mal wieder löschen.

edit: Wieso eigentlich kein MovieClipLoader?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++

Geändert von Der Frager (03-05-2007 um 13:02 Uhr)
Der Frager ist offline   Mit Zitat antworten
Alt 03-05-2007, 13:24   #3 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
hmm... an den MC Loader hab ich jetzt auf die schnelle gar nicht gedacht... mir fehlt da irgendwie der Logikansatz :-\

hab aber den Rest ausgebessert und funktioniert noch immer nicht
D@luxe ist offline   Mit Zitat antworten
Alt 03-05-2007, 13:30   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Ich sehe gerade, dass deine if-Abfrage falsch sitzt. Die gehört natürlich mit in das onEnterFrame:
PHP-Code:
this.onEnterFrame = function() {
            
geladen _root[mc].picmc.getBytesLoaded();
            
zuladen _root[mc].picmc.getBytesTotal();
            if (
geladen>=zuladen && geladen>12) {
                
_root[mc].picmc._x 62.2;
                
//_root[mc].picmc._y=-24.1;
                
_root[mc].picmc._width 96;
                
_root[mc].picmc._height 62;
                
delete this.onEnterFrame;
            }
        }; 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 03-05-2007, 13:55   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
Hab ich alles schon versucht... das Bild verschwindet bei jedem Eingriff durch die Funktion

Hier einmal die fla und die 2 Testbilder

http://emes-pub.sickl.net/croxx.rar
D@luxe ist offline   Mit Zitat antworten
Alt 03-05-2007, 14:01   #6 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Du kannst ja auch nicht einfach ein Schlüsselbild eines von Hand erstellten Tweens ändern. Wie soll den Flash damit klarkommen?
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 03-05-2007, 14:38   #7 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
keine Ahnung :-\

Wie kann ich das ganze am besten lösen?
D@luxe ist offline   Mit Zitat antworten
Alt 03-05-2007, 14:59   #8 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Naja, du darfst halt, wie schon gesagt, kein Schlüsselbild des Tweens per AS verändern.
Was aber wohl ginge, wenn du in dem MC, den du Tweenst noch einen leeren MC erstellst und in den reinlädst:
PHP-Code:
_root[mc].onRollOver = function() {
        
trace("Rollover auf: "+mc);
        
_root[mc].picmc._visible true;
        var 
_root[mc].picmc.createEmptyMovieClip("pic"1);
        
m.loadMovie(bild);
        
this.onEnterFrame = function() {
            
geladen m.getBytesLoaded();
            
zuladen m.getBytesTotal();
            if (
geladen>=zuladen && geladen>12) {
                
_root[mc].gotoAndPlay(2);
                
m._width 96;
                
m._height 62;
                
delete this.onEnterFrame;
            }
        };
    }; 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 03-05-2007, 15:33   #9 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
Ok das funktioniert soweit ja... das ganze Ding braucht jetzt aber noch Masken etc. und ich bin mit dem ganzen glaube ich ein wenig überfordert... mal sehen ob ichs packe

EDIT: hat jetzt auf Anhieb geklappt...

nur noch eine Frage: Um diverse Überlappungen von MC's zu verhindern möchte ich die MC's beim RollOver jeweils in die nächst höhere Ebene verschieben mitsamt dem Inhalt etc. Ist das ohne große Probleme möglich?

Geändert von D@luxe (03-05-2007 um 15:37 Uhr)
D@luxe ist offline   Mit Zitat antworten
Alt 03-05-2007, 15:54   #10 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
ohh Mann... ich kann bald nicht mehr

hab jetzt noch einen zusätzlichen MC in der richtigen Größe erstellt (händisch,nicht mit AS) und mit einer Maske versehen. Es klappt alles wunderbar... nur werden die Bilder total verzerrt in den MC geladen... wenn ich sie skalieren will hab ich wieder das gleiche Problem... nichts ist sichtbar... sehr komisch... hat doch sonst auch immer funktioniert+

EDIT: habs jetzt noch einmal dynamisch gebaut... es funktioniert alles bis auf die Skalierung des MC's

Hier noch einmal die neue fla File

http://emes-pub.sickl.net/croxx_neu.rar

Geändert von D@luxe (03-05-2007 um 16:10 Uhr)
D@luxe ist offline   Mit Zitat antworten
Alt 04-05-2007, 08:28   #11 (permalink)
Neuer User
 
Registriert seit: Jun 2005
Beiträge: 237
hat den gar keiner einen Lösungsansatz? Ich steh total auf der Leitung

EDIT: Hab das Problem jetzt gefunden... der MC hat eine statische Animation die den MC in der Größe verändert... hab das jetzt so genau als möglich per xscale und yscale angepasst...

sollte jemand eine bessere Lösung haben bitte melden

EDIT 2: Das Problem mit den überlappenden MC's habe ich auch ganz elegant mit mx.behaviors.DepthControl.bringToFront(this) lösen können

Geändert von D@luxe (04-05-2007 um 09:14 Uhr)
D@luxe 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 04:51 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele