Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-03-2005, 08:24   #1 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Extends für dyn. erzeugte MCs

Hi !

Habe folgende AS Datei (Name: MyButton.as) als Erweiterung für MovieClips
erstellt:

Code:
class MyButton extends MovieClip
{
 function MyButton()
 {
  stop();
 }
 
 function onRollOver():Void
 {
  trace("RollOver");
 }
 
 function onPress():Void
 {
  trace("Pressed");
 }
 
 function onRollOut():Void
 {
  trace("RollOut");
 }
}
Wie ich die Erweiterung von Hand erstellen MovieClips zuweisen kann
weiß ich --> Über die Verknüpfungseigenschaften. Nur wie kann ich das
ganze an dynamisch erzeugte MCs weitergeben?

_global.dS.sc1.content.createEmptyMovieClip("MeinB ild",10);
_global.dS.sc1.content["slide"+i].loadMovie(...);

Genaugenommen lade ich ein Bild in ein dynamisch erzeugtes MC und möchte dann wissen wenn der User mit der Maus drüberfährt bzw. klickt.

Gruß Christian
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:00   #2 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

genaugenommen benötigst du die erweiterung nicht unbedingt...

die dyn. erzeugten mc's besitzen ja die gleichen methoden und eigenschaften wie manuell erzeugte.

in deinem fall würde ein :

ActionScript:
  1. _global.dS.sc1.content["slide" + i].onRollOver = function() {
  2.     trace("rollOver");
  3.     //----> hier was passieren soll bei rollOver
  4. };
  5. _global.dS.sc1.content["slide" + i].onPress = function() {
  6.     trace("Press");
  7.     //----> hier was passieren soll bei Press
  8. };
  9. _global.dS.sc1.content["slide" + i].onRollOut = function() {
  10.     trace("rollOut");
  11.     //----> hier was passieren soll bei rollOut
  12. };

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:10   #3 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Hi !

Danke für deine Antwort.
Dein Vorschlag funktioniert leider nicht, das gleiche Beispiel hatte ich vorher schonmal ausprobiert. Liegt es vielleicht daran das meine MCs in einer ScrollPane untergebracht werden?

Gruß Christian
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:26   #4 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

was mir ein wenig komisch vorkommt ist das hier:

_global.dS.sc1.content.createEmptyMovieClip("MeinB ild",10);
_global.dS.sc1.content["slide"+i].loadMovie(...);

du erzeugst nen mc namens "MeinBild"...

was passiert mit MeinBild?

liegen diese beiden zeilen in einer for-schleife?

zeig mal restlichen code der damit zusammenhängt...

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:32   #5 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
"Mein Bild" war nur beispielhaft.
Hier der ganze Code:

Code:
_global.br = browser;
_global.dS = this; 
_global.SlideLoaded = new Array;
_global.dS.sc1.contentPath = "Slides";
_global.dS.sc1.content.createEmptyMovieClip("Zeiger",1000);
_global.dS.sc1.content.Zeiger._y = 10;
_global.dS.sc1.setStyle("borderStyle", "none");
_global.welcherSlide = 0;

loadXML('SlideList.xml');

function loadXML(atr) {
    mein_xml = new XML();
    mein_xml.ignoreWhite = true;
    mein_xml.load(atr);
    mein_xml.onLoad = function(success) {
        if (success) {
			
    _global.x = parseFloat(mein_xml.firstChild.childNodes[0].firstChild.firstChild) *152;
            data_xml = mein_xml;
            meineFunktion(data_xml);
        }
    };
}

function meineFunktion(SlideList){
	for(var i=0; i<SlideList.firstChild.childNodes.length; i++) {	
			_global.SlideLoaded[i] = {
				              PPTSlideCount: SlideList.firstChild.childNodes[i].firstChild.firstChild,
				              StringDuration: SlideList.firstChild.childNodes[i].firstChild.nextSibling.firstChild,
				              StringStartTime: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.firstChild,
				              StringSlideNumber: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.firstChild,
				              StringSequenceNumber: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              Sent: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              SequenceNumber: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              PPTFileName: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              FileName: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              Status: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              HighQualitySlideName: SlideList.firstChild.childNodes[i].nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              FileThumbnailName: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
		                      SlideNumber: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              SlideTitle: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              StartTime: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild,
				              Duration: SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild
			                  }
							  
							  _root.Listi.setStyle("fontFamily","Verdana");
						      _root.Listi.setStyle("fontSize","10");
														  
							  _root.Listi.addItem({label:SlideLoaded[i].SlideTitle, data:0});
							  
							  _global.dS.sc1.content.createEmptyMovieClip("slide"+i,i); 
							  _global.dS.sc1.content["slide"+i].loadMovie(SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.firstChild); 
		                      _global.dS.sc1.content["slide"+i]._x = (_global.dS.sc1.content["slide"+a]._x + _global.dS.sc1.content["slide"+a]._xscale * 1.70); 
		                      _global.dS.sc1.content["slide"+i]._y = (140/2) - (_global.dS.sc1.content["slide"+i]._yscale/2);	
							  a = i;
		                 	}
}

with (_global.dS.sc1.content.Zeiger){
	clear();
	lineStyle(1, 0xFF0000, 100);
    lineTo(0, 133); 
    endFill();
}
with (_global.dS.sc1.content){
     clear();
     lineStyle(0, 0xFF0000, 0);
     moveTo(0, 0); 
     lineTo(_global.x, 100); 
     lineTo(_global.x, 100); 
     lineTo(0, 0); 
     lineTo(0, 0); 
     endFill();
    }	
stop();
Wichtig wären diese beiden Zeilen:

_global.dS.sc1.content.createEmptyMovieClip("slide "+i,i);
_global.dS.sc1.content["slide"+i].loadMovie(SlideList.firstChild.childNodes[i].firstChild.nextSibling.nextSibling.nextSibling.ne xtSibling.nextSibling.nextSibling.nextSibling.next Sibling.nextSibling.nextSibling.nextSibling.firstC hild);
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:41   #6 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

also der rest wird ohne probleme ausgeführt, ja?
nur die events werden nicht ausgelöst, oder?

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:49   #7 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
jap stimmt. Der Rest läuft sauber.

Weißt du woran das liegen könnte?
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 09:54   #8 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

kannste mir vielleicht noch die xml-datei schicken damit ich mal fixen kann?

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:03   #9 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Bitte!

Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE ArrayOfSlideInfo SYSTEM "SlideList.dtd">
<?xml-stylesheet type="text/xsl" href="SlideList.xsl"?>
<ArrayOfSlideInfo xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <SlideInfo>
    <PPTSlideCount>45</PPTSlideCount>
    <StringDuration>14.53</StringDuration>
    <StringStartTime>0</StringStartTime>
    <StringSlideNumber>1</StringSlideNumber>
    <StringSequenceNumber>1</StringSequenceNumber>
    <Sent>true</Sent>
    <SequenceNumber>1</SequenceNumber>
    <PPTFileName>risk.ppt</PPTFileName>
    <FileName>risk\SlideCompressedNo001of045-0000.jpg</FileName>
    <Status>1 / 45</Status>
    <HighQualitySlideName>risk/Slides/SlideHQNo001of045-0000.jpg</HighQualitySlideName>
    <FileThumbnailName>risk/Thumbnails/ThumbnailNo001of045-0000.jpg</FileThumbnailName>
    <SlideNumber>1</SlideNumber>
    <SlideTitle>Slide1</SlideTitle>
    <StartTime>0</StartTime>
    <Duration>14.53</Duration>
  </SlideInfo>
  <SlideInfo>
    <PPTSlideCount>45</PPTSlideCount>
    <StringDuration>17.186</StringDuration>
    <StringStartTime>14.53</StringStartTime>
    <StringSlideNumber>2</StringSlideNumber>
    <StringSequenceNumber>2</StringSequenceNumber>
    <Sent>true</Sent>
    <SequenceNumber>2</SequenceNumber>
    <PPTFileName>risk.ppt</PPTFileName>
    <FileName>risk\SlideCompressedNo002of045-0000.jpg</FileName>
    <Status>2 / 45</Status>
    <HighQualitySlideName>risk/Slides/SlideHQNo002of045-0000.jpg</HighQualitySlideName>
    <FileThumbnailName>risk/Thumbnails/ThumbnailNo002of045-0000.jpg</FileThumbnailName>
    <SlideNumber>2</SlideNumber>
    <SlideTitle>About …</SlideTitle>
    <StartTime>14.53</StartTime>
    <Duration>17.186</Duration>
  </SlideInfo>

</ArrayOfSlideInfo>
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:15   #10 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

wo wird _global.dS.sc1 definiert?

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:20   #11 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Zitat:
Zitat von fraggle two
hi,

wo wird _global.dS.sc1 definiert?

gruß
mike
sc1 ist der Name der ScrollPane die auf der Bühne liegt.

gruß Christian
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:38   #12 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
hi,

was liegt in deinem ordner sliders?

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:44   #13 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Zitat:
Zitat von fraggle two
hi,

was liegt in deinem ordner sliders?

gruß
mike
Habe keinen Ordner Namens "sliders" wie kommst du darauf...

Gruß Christian
Utopian ist offline   Mit Zitat antworten
Alt 07-03-2005, 10:59   #14 (permalink)
The Man Who Wasn't There
 
Benutzerbild von fraggle two
 
Registriert seit: Jul 2003
Ort: BÄRLIN
Beiträge: 1.156
uups... meine natürlich "Slides"

habs mal so zum testen nachgebaut und ich glaube durch:

_global.dS.sc1.contentPath = "Slides";

gibt er mir den fehler:

Error opening URL "file:///C|/Dokumente%20und%20Einstellungen/Admin/Desktop/Slides"

hab die jpg-pfade in deinem xml durch eigene ausgetauscht... werden aber glaub ich nicht geladen...

gruß
mike
__________________
Dot-Realities
Mike Broders
Berlin

ICQ:105925103

Dot-Realities v4.0 under construction!

Geändert von fraggle two (07-03-2005 um 11:01 Uhr)
fraggle two ist offline   Mit Zitat antworten
Alt 07-03-2005, 11:05   #15 (permalink)
Neuer User
 
Benutzerbild von Utopian
 
Registriert seit: May 2003
Beiträge: 1.031
Also "Slides", das bei der Zuweisung

_global.dS.sc1.contentPath = "Slides";

auftaucht, ist ein MC.

Musst diesen MC in der Bibliothek anlegen und mit "Slides" benennen.
Utopian 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 08:43 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele