tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
728
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    flashsi flashsi ist offline Mitglied Gold
    Registriert seit
    Nov 2007
    Beiträge
    155
    Hallo Leute,

    kann mir jemand erklären, warum folgendes nicht funktioniert:

    ich lade per loadMovie eine .swf in einen MC namens leinwand. Nach einer Weile lade ich in den selben MC leinwand mit attachMovie auf Level 10 einen anderen MC aus der Bibliothek.

    Sollte er nicht einfach den vorigen MovieClip überschreiben?


    Schöne Grüsse
     

  2. #2
    Avatar von Jens B.
    Jens B. Jens B. ist offline Damn good coffee!
    tutorials.de Premium-User
    Registriert seit
    Nov 2001
    Beiträge
    2.477
    Hi.
    Zeig mal bitte den Code, mit dem du das machst. attachMovie hängt ja im Prinzip einen Movieclip an einen anderen ran (attach = ranhängen). Wenn du also jetzt leinwand.attachMovie("meineInstanz") machst, wird das nicht leinwand ersetzen, sondern einen MC in leinwand erstellen (der 2te Parameter von attachMovie ist dann der Instanzname dieses neuen MCs, lässt man ihn leer kommt nen Error).

    Auch _root.attachMovie("blubb", "leinwand", _root.getNextHighestDepth()); wird nicht so einfach gehen, da der alte MC nicht überschrieben wird. Du solltest also erstmal die alte leinwand löschen und dann mit der zuletzt geposteten Variante von attachMovie deinen MC einladen.

    Gruß
    jens
     

  3. #3
    flashsi flashsi ist offline Mitglied Gold
    Registriert seit
    Nov 2007
    Beiträge
    155
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    leinwand.attachMovie("foto0", "foto00", 10);
     
    v = setInterval(neueswf, 3000);
     
    function neueswf() {
        clearInterval(v);
        loadMovie("foto1.swf", leinwand);
    }
     
    taster.onPress = function() {
        clearInterval(v);
        leinwand.unloadMovie("foto1.swf");
        leinwand.attachMovie("foto0", "foto00", 10)
    }

    Das funktioniert leider nicht. Aber wenn ich einen zweiten MC auf die Bühne setzte mit leinwand2

    Code :
    1
    2
    3
    4
    5
    
    taster.onPress = function() {
        clearInterval(v);
        leinwand.unloadMovie("foto1.swf");
        leinwand2.attachMovie("foto0", "foto00", 10)
    }

    läuft es problemlos. d.h. irgendwie verschwindet nach dem Aufruf setInterval der leinwand MC, oder?
    Geändert von Jens B. (15.09.09 um 18:08 Uhr)
     

  4. #4
    Avatar von Jens B.
    Jens B. Jens B. ist offline Damn good coffee!
    tutorials.de Premium-User
    Registriert seit
    Nov 2001
    Beiträge
    2.477
    Schau mal die mit ! markierten Stellen.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    leinwand.attachMovie("foto0", "foto00", 10); // !
     
    v = setInterval(neueswf, 3000);
     
    function neueswf() {
        clearInterval(v);
        loadMovie("foto1.swf", leinwand);
    }
     
    taster.onPress = function() {
        clearInterval(v);
        leinwand.unloadMovie("foto1.swf");
        leinwand.attachMovie("foto0", "foto00", 10); // !
    }

    Es gibt also zum Zeitpunkt von onPress bereits den MC, den du anhängen willst. Es kann sein, dass Flash ihn trotzdem erstellt - es aber Konflikte mit den Instanznamen gibt und du den neuen MC nicht ansprechen kannst. Was willst du denn genau erreichen - sollen beide MCs parallel existieren, der neue innerhalb der eingeladen swf oder soll der neue die swf ersetzen?

    Außerdem: loadMovie("foto1.swf", leinwand); ist veraltet, benutz lieber leinwand.loadMove("foto1.swf");
    Geändert von Jens B. (15.09.09 um 18:14 Uhr)
     

  5. #5
    flashsi flashsi ist offline Mitglied Gold
    Registriert seit
    Nov 2007
    Beiträge
    155
    Auch wenn ich ihm einen neuen Instanznamen gebe funktioniert es nicht.

    Ich möchte verschiedene MC nacheinander laden. Und hatte sie eigentlich in meinem Projekt drin. Aber das es einige Bilder sind, wollte ich sie per loadMovie einladen, bis auf den ersten, damit der gleich erscheint. Somit habe ich ihn per attachMovie geladen. und die anderen werden nach und nach in einem bestimmten Intervall geladen.

    Wenn ich die Taste gleich zu Anfang drücke, kommt funktioniert es aber. Komisch.
     

  6. #6
    Avatar von Jens B.
    Jens B. Jens B. ist offline Damn good coffee!
    tutorials.de Premium-User
    Registriert seit
    Nov 2001
    Beiträge
    2.477
    Auch wenn ich ihm einen neuen Instanznamen gebe funktioniert es nicht.
    Wer ist 'er'? Es scheint so, als würde das Laden einer swf in einen MC einige funktionien blockieren, auch wenn man ihn wieder entlädt. Mehr dazu hier

    Wieso müssen die denn so umbedingt in einem MC sein? Vielleicht reichen ja 2 MCs (einer leinwand, einer foto00) in einem weiteren, übergeordneten MC?
    Geändert von Jens B. (16.09.09 um 12:33 Uhr)
     

Ähnliche Themen

  1. attachMovie
    Von flashsi im Forum Flash Plattform
    Antworten: 5
    Letzter Beitrag: 29.08.09, 11:24
  2. Antworten: 1
    Letzter Beitrag: 11.03.08, 20:50
  3. loadMovie -> attachMovie funktioniert nicht mehr
    Von Nervensache im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 30.01.07, 22:38
  4. attachMovie
    Von Mathias_1_2 im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 26.03.05, 09:19
  5. attachMovie-V5
    Von Guden im Forum Flash Plattform
    Antworten: 1
    Letzter Beitrag: 16.10.03, 19:24