Flashhilfe.de - Flash Community

URL auf eingeladenen MovieClip [Flash 10]

 


AntwortenRegistrieren Seite1  

Zipfel#1
Benutzerbild von Zipfel
Beiträge: 130
Wohnort: Karlsruhe
Registriert: Mar 2002

27.10.2010, 15:30

Hi Zusammen,

nach nun 2 Stunden Forumssuche, muss ich dieses Problem doch nochmal posten.
Ich möchte in einen Movie ein dynamische Bild einladen. Das Bild das dann angezeigt wird, soll einen Link besitzen, sprich: ich klicke drauf und danach soll ein Webbrowser mit dem Link aufgehen.
Das muss doch ganz einfach gehen. Hier mein Code:

ActionScript:
1
2
3
4
5
6
7
8
9
var clip:MovieClip = _root;
var mc:MovieClip = clip.createEmptyMovieClip("_NewMovie", clip.getNextHighestDepth());

      
mc._x = 150;
mc._y = 150;
mc.width = 200;
mc.height = 300;
mc.loadMovie("ccd.jpg"); //hier wird nun das bild reingeklebt.


Ich habe alles probiert von mc.addEventlinstener über mc.onRelease. Aber das will einfach nicht. Woran hängt's?
_______________
Gruß Zipfel
mikemike#2
Benutzerbild von mikemike
Beiträge: 125
Registriert: Jan 2010

27.10.2010, 17:31

Hallo Zipfel!
Da du meintest, dass du auch mc.addEventListener probiert hast, werde ich dir mal eine AS3 Lösung geben.
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var mc:MovieClip = new MovieClip(); //ein neuer MovieClip
//Die normalen Angaben zur Positionierung
mc.x = 150;
mc.y = 150;
mc.width = 200;
mc.height = 300;
addChild(mc); //mc wird der Bühne hinzugefügt

//um ein Bild zu laden geht man in AS3 wie folgt vor:
var loader:Loader = new Loader(); //ein Lade-Object
var url:URLRequest = new URLRequest("ccd.jpg"); //welches eine URL erhält
loader.load(url); //und diese URL dann läd.
mc.addChild(loader); //das Lade-Object wird dem mc hinzugefügt

//anschließen wird dem Bild ein EventListener verpasst
mc.loader.addEventListener(MouseEvent.CLICK, gotoURL);
function gotoURL(evt:MouseEvent) {
  var site:URLRequest = new URLRequest("http://www.deineSite.de");
  navigateToURL(site);
}


Treffen sich ein Stein und ein Brett.
Der Stein: "Hi, Ich bin ein Stein"
Das Brett: "Wenn du Einstein bist, bin ich Brett Pitt"
mikemike#3
Benutzerbild von mikemike
Beiträge: 125
Registriert: Jan 2010

27.10.2010, 17:48

Sorry Zipfel, ich habs gerade ausprobiert und wie aussieht ist mir da ein Fehler unterlaufen =). Also erst mal musst du die width und height Angaben weglassen (diese werden ja so oder so durch das Bild bestimmt). Außerdem funktioniert die Zeile "mc.loader.addEventListener" bei mir komischerweise nicht...
Wenn es bei dir auch so ist kannst du sie in "mc.getChildAt(0).addEventListener" ändern
Treffen sich ein Stein und ein Brett.
Der Stein: "Hi, Ich bin ein Stein"
Das Brett: "Wenn du Einstein bist, bin ich Brett Pitt"
RustyCake#4
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

27.10.2010, 18:22

Woran hängt's?
Kann ich Dir sagen, also für die AS2-Variante!
Man kann dem "mc" erst einen "buttonEvent" zuweisen, wenn der komplett geladen ist.
Also würde ein mini-loader schon reichen, um den Event auf den Button zu nageln!
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
Zipfel#5
Benutzerbild von Zipfel
Beiträge: 130
Wohnort: Karlsruhe
Registriert: Mar 2002

Themenautor/in

28.10.2010, 09:32

Dank der Posts habe ich die Lösung nun wie folgt:

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
static function showMovieClip(Args:String):Void
{
  var clip:MovieClip =_root.createEmptyMovieClip("_Container", _root.getNextHighestDepth());
  var mc:MovieClip = clip.createEmptyMovieClip("_Content", clip.getNextHighestDepth());
        trace("finished createEmptyMovieClip, continue...");
        
        repositionAd(mc); //positionierung
      mc.loadMovie("image.jpg");
        
        clip.onEnterFrame = function (){
           //loader         
         if (mc.getBytesLoaded() == (mc.getBytesTotal())){
              trace("loading complete, continue...");
              delete clip.onEnterFrame;
              attachClickEventAt(clip,"http://woimmermanhinwill.de");
           }
        }
     }
   
   static function repositionAd(adClip:MovieClip){
        adClip._x = 150;
        adClip._y = 150;
     }
   
   static function attachClickEventAt(containerClip:MovieClip,link:String){
        containerClip.onRelease = function(){
           trace("mc onRelease: " + link);
        }            
     }


Vielen Dank für die Tipps. Das ist übrigends AS2. Das AS3 Beispiel hier, werde ich mir noch näher anschauen. Danke!
_______________
Gruß Zipfel
Geändert von Zipfel am 28.10.10 um 09:33 Uhr

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2020 Sebastian Wichmann - Flashhilfe.de