Forum FAQForum FAQSearchSearch MemberlistMemberlist Forum ignore listForum ignore list RegisterRegister ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in
xml & action script

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Flash
View previous topic :: View next topic  
Author Message
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 05.12.2005 00:08    Post subject: xml & action script Add user to your forum ignore list Reply with quote

muci me slijedeci problem, zasto ovo radi:
this.mcPhoto.loadMovie("image/pic.jpg");
a ovo ne:
this.mcPhoto.loadMovie(mEssayPhoto);

(mEssayPhoto = "image/pic.jpg"; - loadano iz imageData.xml)

Code:
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.onLoad = function (bSuccess:Boolean):Void {
   if (bSuccess) {
      var xnRoot:XMLNode = this.firstChild;
      
      mEssayTitle = xnRoot.attributes.essayTitle;
      mEssayPhoto = xnRoot.attributes.essayImage;

      // wtite title in text field txtEssayTitle
      txtEssayTitle.text = mEssayTitle;
      
      this.createEmptyMovieClip("mcPhoto", this.getNextHighestDepth);
      mcPhoto._x = 20;
      mcPhoto._y = 120;
      this.mcPhoto.loadMovie(mEssayPhoto);
   }
};
myXML.load("imageData.xml");


ako netko ima bilo kakvu ideju bio bih mu jaaaako zahvalan Smile
Back to top
View user's profile Send private message
Tedius



Joined: 22 Dec 2003
Posts: 149
Location: Zagreb

PostPosted: 05.12.2005 00:17    Post subject: Add user to your forum ignore list Reply with quote

Napravi trace(mEssayPhoto); pa vidi je li uopce u tome stvar...
Back to top
View user's profile Send private message Visit poster's website
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 05.12.2005 08:31    Post subject: Add user to your forum ignore list Reply with quote

napravio trace, mEssayPhoto se ispravno load-a iz xml file-a, na zalost fora nije u tome Mad
Back to top
View user's profile Send private message
nemogirl



Joined: 27 Oct 2004
Posts: 386
Location: istra

PostPosted: 05.12.2005 09:57    Post subject: Add user to your forum ignore list Reply with quote

mozda glupo ali probaj:

mozda ti fale navodnici...

this.mcPhoto.loadMovie("mEssayPhoto")

ili

u xml bazi <mEssayPhoto>"image/pic.jpg"</mEssayPhoto>

Question
Back to top
View user's profile Send private message
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 05.12.2005 10:15    Post subject: Add user to your forum ignore list Reply with quote

ako stavim navodnike onda metodi kao parametar ne predajem varijablu nego string "mEssayPhoto" a to nije ono sto zelim.

a u xml file-u je atribut essayImage="images/pic.jpg"

pokusao sam i mEssayPhoto deklarirati kao string (essayImage:String = ...), bez uspjeha...
Back to top
View user's profile Send private message
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 05.12.2005 15:07    Post subject: Add user to your forum ignore list Reply with quote

ne pitajte zasto, ovako radi: Rolling Eyes
Code:
var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.onLoad = function (bSuccess:Boolean):Void {
   if (bSuccess) {
      var xnRoot:XMLNode = this.firstChild;
      
      mEssayTitle = xnRoot.attributes.essayTitle;
      mEssayPhoto = xnRoot.attributes.essayImage;

      // wtite title in text field txtEssayTitle
      txtEssayTitle.text = mEssayTitle;
      
      // show the essay pic
       _root.createEmptyMovieClip("mcEssayPhoto", 200);
       mcEssayPhoto._x=20;
       mcEssayPhoto._y=120;
       loadMovie(mEssayPhoto,"mcEssayPhoto");

   }
};
myXML.load("imageData.xml");
Back to top
View user's profile Send private message
corea



Joined: 12 Jan 2004
Posts: 133
Location: zg

PostPosted: 06.12.2005 09:47    Post subject: Add user to your forum ignore list Reply with quote

Mozda je stvar u tajmingu... xml se ne loada dovoljno brzo i kod za loadanje varijable iz XML-a se izvrsi jos prije nego se ovaj stigne loadat. Probaj ih bacit na dva razlicita framea, ili stavit neku pauzu od sekunde izmedju, cisto probe radi. Tako zna bit kad loadas varijable iz TXT fajla, iako sam to radio jednom davno u Flashu 5, ali sjecam se problematike...
Back to top
View user's profile Send private message
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 07.12.2005 11:23    Post subject: Add user to your forum ignore list Reply with quote

yeah, mislio sam i na taj problem, preload svakako moram implementirati prije nego idem online. thx Smile
Back to top
View user's profile Send private message
rasljenka



Joined: 14 Jan 2005
Posts: 42

PostPosted: 11.05.2006 08:21    Post subject: Add user to your forum ignore list Reply with quote

Probaj sa
this.mcPhoto.loadMovie(mEssayPhoto.toString);

ili tako ne?to

uglavnom znam da meni nije ?timalo ne?to sa tipovima varijabli
________
Jaguar R3 picture

Last edited by rasljenka on 01.02.2011 08:10; edited 1 time in total
Back to top
View user's profile Send private message
rasljenka



Joined: 14 Jan 2005
Posts: 42

PostPosted: 11.05.2006 09:01    Post subject: Add user to your forum ignore list Reply with quote

Shame on you !!! ISPRAVKA !!! Sorry

onaj toString treba staviti u ActionScript codu kod povla?enja XML-a.
npr.

ili na:
var xnRoot:XMLNode = this.firstChild.toString;

ili na:
mEssayTitle = xnRoot.attributes.essayTitle.toString;
mEssayPhoto = xnRoot.attributes.essayImage.toString;

Mislim da je ovo drugo ili mo?da oboje.
Isprobaj!
________
Sakichi Toyoda

Last edited by rasljenka on 01.02.2011 08:10; edited 1 time in total
Back to top
View user's profile Send private message
attic



Joined: 23 Apr 2006
Posts: 36
Location: London (UK) / Brežice (Slo) / New Delhi (India - coming soon :)

PostPosted: 17.05.2006 15:44    Post subject: Add user to your forum ignore list Reply with quote

RAdi se o scope problemu.

Kad u prvoj verziji kreiraš this.createEmptyMovieClip() ti to zapravo radiš u XML objektu, pošto se i cijela funkcija nalazi u tom objektu. To naravno ne pali, jer XML class nema metode createEmptyMovieClip(), ni getNextHighestDepth()

U drugoj verziji ti kreiraš mc na rootu: _root.createEmptyMovieClip()

Ako želiš riješti scope problem na elegantan način, koristi Delegate class. Recimo ovako:

Code:

var myXML:XML = new XML();
myXML.ignoreWhite = true;
myXML.load("imageData.xml");
myXML.onLoad = Delegate.create(this, ParseXML);

function ParseXML(bSuccess:Boolean):Void{
 if(bSuccess){
   // do something
 }
}

Sad imaš sve u istom scope-u.

Delegate je built in class u Flash 8, za MX 2004 moraš skinut sa neta i stavit negdje u class folder.
Back to top
View user's profile Send private message Visit poster's website
fanatic



Joined: 02 Nov 2004
Posts: 81
Location: vienna

PostPosted: 24.05.2006 10:32    Post subject: Add user to your forum ignore list Reply with quote

hey, thanks brother! jer nisam bas hard core programer tesko da bih ikada sam uocio scope problem, ali tvoje objasnjenje je jasno i logicno, a izgleda da ce mi ono pomoci da rijesim "misteriozne" probleme i u par drugih skripti. hvala!
Back to top
View user's profile Send private message
attic



Joined: 23 Apr 2006
Posts: 36
Location: London (UK) / Brežice (Slo) / New Delhi (India - coming soon :)

PostPosted: 27.05.2006 12:05    Post subject: Add user to your forum ignore list Reply with quote

Znam, scope je zajeban igrač i slabo dokumentiran. U MX 2004 čak nema Delegate classa, tek su ga stavili u 8. Na sreču, AS3 neće imat tog problema više:
Quote:

"In ActionScript 3.0, a reference to a method automatically remembers the object instance it was extracted from; in essence, it is an automatic delegate."


Dakle samo:

myXML.onLoad = ParseXML;
Back to top
View user's profile Send private message Visit poster's website
_ ewinter



Joined: 17 Jul 2005
Posts: 14

PostPosted: 27.05.2006 13:04    Post subject: Add user to your forum ignore list Reply with quote

Ako se unutar funkcija definirane na timelineu ne koristi this, scope je dotični timeline (mc). Ako se pak koristi this, onda je scope objekt kojem metoda pripada, ili opet dotični timeline ako funkcija ne pripada objektu.

Rješenje koje bih ja primjenio:

... (sve isto) ...

createEmptyMovieClip("mcEssayPhoto", getNextHighestDepth());
mcEssayPhoto._x=20;
mcEssayPhoto._y=120;
loadMovie(mEssayPhoto,"mcEssayPhoto");

...

Ovo sve radi unutar _root scopea, mada je funkcija definirana unutar XML objekta. Odnosno, ako se koristi this, koristi se scope XML objekta.

Sorry, ako ponavljam očigledno. Smile

Pozdrav.
Back to top
View user's profile Send private message
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Flash All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group