Salve a tutti,
sto cercando di realizzare una applicazione desktop in flash. Ho necessità di conoscere il percorso esatto di alcuni file e quindi sto provando ad utilizzare flex per otterere appunto il nativePath e passarlo a flash.
Purtroppo visto la mia scarsissima conoscenza di as3 mi trovo ancora a lavorare con as2. Inoltre questa è la prima volta che utilizzo flex e quindi mi trovo abbastanza in difficoltà. Ad ogni modo, dopo un paio di giorni di imprecazioni e tentativi questo è il mio stato dell'arte: un file in flex con questo codice
codice:import flash.net.LocalConnection; var sending_lc:LocalConnection = new LocalConnection private var _refAddFiles:File; public var percorsoFile:String; // Called to add file(s) for upload private function addFiles():void { _refAddFiles = new File(); _refAddFiles.addEventListener(Event.SELECT,onSelectFile); _refAddFiles.browse(); } // Called when a file is selected private function onSelectFile(event:Event):void { abctxt.text = _refAddFiles.nativePath; percorsoFile = _refAddFiles.nativePath; trace (percorsoFile) } public function invia():void { sending_lc = new LocalConnection sending_lc.allowDomain("*"); sending_lc.allowInsecureDomain("*"); sending_lc.client=this; sending_lc.send('_idname', 'ricevi', percorsoFile); trace (percorsoFile) }
e ho questi due pulsanti
nel file fla invece ho questo:codice:Button id="btnAdd" toolTip="Seleziona il file" click="addFiles();" x="86" y="301" label="Seleziona" Button id="btnInvia" toolTip="Conferma" click="invia();" x="180" y="301" label="Apri"
Ho risolto vari errori di connessione e adesso sembra andare tutto ma ovviamente non mi passa la variabile. Inoltre ho fatto una prova praticamente identica fra due fla e il passaggio avviene.codice:var receiving_lc:LocalConnection = new LocalConnection(); receiving_lc.allowDomain("*") receiving_lc.connect('_idname'); receiving_lc.ricevi = function(parametro:String) { trace("ho ricevuto: "+parametro); percorso.text = parametro; };
Dove sta l'inghippo quindi?
Grazie a tutti in anticipo

Rispondi quotando