Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
RC09 pentru camera A500s

Dren de fosa langa casa?

Panko lung

plata la persoana juridica pentru...
 Infiintare asociatie sprijin copi...

Recomandare pompa submersibila

Analfabetism functional la relati...

Declaratia Unica - dividende WINE
 Plase ferestre, din nanofibra, an...

Batch defect de cartele metrou

350 lei pentru o plomba e mult sa...

Incarcator Makita China
 Boala pomi, sau insecte?

Ghiduri clinice Romania

Credit - persoane cu dizabilitati...

Diferente dioptrii intre ochi
 

Help | Loader la incarcarea unui jpeg extern in swf

- - - - -
  • Please log in to reply
6 replies to this topic

#1
nailbomb

nailbomb

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 04.07.2004
Help help help
M-am chinuit de mi-au sarit capacele NUU POT
vreau sa imi dati voi codu` de-a gata :)

vreau ca swf-ul sa stea blocat pe un frame pana cand termina de incarcat un jpeg din exterior (jpegu e mare rau) - dupa care sa afiseze jpegu.

Senkiu`

#2
tchocksoo

tchocksoo

    Member

  • Grup: Senior Members
  • Posts: 2,218
  • Înscris: 20.01.2004
hai sa o luam usor

pentru preloader ai nevoie de 2 frame-uri.

aceste 2 frame-uri poti sa le pui ori in alta scena ori in scena unde ai restul de content.

sa zicem ca le pui in timeline-ul principal, pentru claritate
deci in primul frame scrii loading sau ce vrei tu

si mai cpui pe scena un  text dinamic (din properties partea stanga este o casuta derulanta de unde poti sa alegi static dinamic sau input text)

acestui text dinamic ii atribui o variabila pe care o vom denumi procent

apoi faci un nou layer dai click pe frame-ul 1 apesi F9 ca sa-tzi apara fereastra actions si incepi sa scrii urmatoarele

incarcat=getBytesLoaded ();   

unde incarcat   este o variabila in care retinem cat din film s-a incarcat
apoi

total= getBytesTotal ();


unde total este o variabila in care retinem marimea totala a filmului tau

apoi:

procent=Math.round ( incarcat/total*100
);

aici am calculat procentul de incarcare al filmului. am folosit functia Math.round ca sa rotunjim valoare obtinuta la un intreg. nu vrem sa ne apara o cifra de genul 51, 12345678 %

acum daca mai tii minte textului dinamic pe care l-am pus pe scena i-am atrtibuit variabila procent. asta inseamna ca el iti va afisa valoarea acestei variabile.

In momentul de fata se intampla urmatoarele. filmul incepe intra in frame-ul 1 calculeaza cat s-a incarcat din film  trece la frame-ul 2 si continua sa mearga.
noi vrem sa nu treaca mai departe decat daca filmul e incarcat complet de aceea tre sa probam acel lucru. nimic mai simplu uite cum facem


if (incarcat==total)

{ gotoAndPlay (3);
    }


acum mai avem nevoie de un singur lucru o metoda de a ne intoarce in frame-ul 1 pana se termina de incarcat filmul. probabil crezi ca am uitat de frame-ul 2 ei nu . in frame-ul 2 vei face un frame gol in layerul in care ai scris si primele actiuni si vei scrie

gotoAndPlay (1);







iata tot codul legat

frame1

incarcat=getBytesLoaded ();   

total= getBytesTotal ();


procent=Math.round ( incarcat/total*100
);


if (incarcat==total)

{ gotoAndPlay (3);
    }


si in frame-ul 2


gotoAndPlay (1);



gata!!
sunt multe modalitati dea face un preloader mie asta mi se pare cea mai simpla si  cea mai usor de inteles.

daca mai ai nelamuriri intreaba vorbim.

#3
nailbomb

nailbomb

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 04.07.2004
Ms pt cod, dar nu cred ca m-am exprimat eu bine in legatura cu ceea ce voiam.
Codul tau imi va returna un procent la cati bytes a incarcat din swf-ul principal. Eu nu asta voiam.
Eu voiam ca dupa ce se incarca swf-ul principal cand apas pe un buton sa zicem, care sa apeleze codul ( care trebuie sa mi-l dati voi :D) care incarca un fisier jpeg (adresa de la directorul unde se afla jpegul tot eu o furnizez sa zicem ../img/imagine_high_res.jpg) si sa imi returneze  getBytesLoaded dar nu din swf-ul principal ci din JPEG-ul pe care a incept sa il incarce.
Functia pentru incarcare de JPEG sau moveClip de fapt e:
loadMovie("../img/imagine_high_res.jpg", "numele_la_movieClipul_in_care_va_fi_afisata");
Cum se aplica getBytesLoaded la functia de mai sus?
any ideea?

#4
nailbomb

nailbomb

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 04.07.2004

LoadMovie();
Description
Function; loads a SWF or JPEG file into Flash Player while the original SWF file is playing.

Tip: If you want to monitor the progress of the download, use MovieClipLoader.loadClip() instead of this function.



MovieClipLoader.loadClip()
Example
The following example illustrates the use of many of the MovieClipLoader methods and listeners.

// first set of listeners
var my_mcl = new MovieClipLoader();
myListener = new Object();
myListener.onloadStart = function (target_mc)
{
myTrace ("*********First my_mcl instance*********");
myTrace ("Your load has begun on movie clip . = " + target_mc);
var loadProgress = my_mcl.getProgress(target_mc);
myTrace(loadProgress.bytesLoaded + " = bytes loaded at start");
myTrace(loadProgress.bytesTotal + " = bytes total at start");
}
myListener.onloadProgress = function (target_mc, loadedBytes, totalBytes)
{
myTrace ("*********First my_mcl instance Progress*********");
myTrace ("onloadProgress() called back on movie clip " + target_mc);
myTrace(loadedBytes + " = bytes loaded at progress callback " );
myTrace(totalBytes + " = bytes total at progress callback n");
}
myListener.onloadComplete = function (target_mc)
{
myTrace ("*********First my_mcl instance*********");
myTrace ("Your load is done on movie clip = " + target_mc);
var loadProgress = my_mcl.getProgress(target_mc);
myTrace(loadProgress.bytesLoaded + " = bytes loaded at end" );
myTrace(loadProgress.bytesTotal + " = bytes total at end=");
}
myListener.onloadInit = function (target_mc)
{
myTrace ("*********First my_mcl instance*********");
myTrace ("Movie clip = " + target_mc + " is now initialized");
// you can now do any setup required, for example:
target_mc._width = 100;
target_mc._width = 100;
}
myListener.onloadError = function (target_mc, errorCode)
{
myTrace ("*********First my_mcl instance*********");
myTrace ("ERROR CODE = " + errorCode);
myTrace ("Your load failed on movie clip = " + target_mc + "n");
}
my_mcl.addListener(myListener);
//Now load the files into their targets.
// loads into movie clips - strings used as target
my_mcl.loadClip("http://www.somedomain.somewhere.com/someFile.swf","_root.myMC");
my_mcl.loadClip("http://www.somedomain.somewhere.com/someOtherFile.swf", "_level0.myMC2");
//failed load
my_mcl.loadClip("http://www.somedomain.somewhere.com/someFile.jpg", _root.myMC5);

// loads into movie clips - movie clip instances used as target.
my_mcl.loadClip("http://www.somedomain.somewhere.com/someOtherFile.jpg", _level0.myMC3);

// loads into _level1
my_mcl.loadClip("file:///C:/media/images/somePicture.jpg", 1);

//Second set of listeners
var another_mcl = new MovieClipLoader();
myListener2 = new Object();
myListener2.onloadStart = function (target_mc)
{
myTrace("*********Second my_mcl instance*********");
myTrace ("Your load has begun on movie clip22 . = " + target_mc);
var loadProgress = my_mcl.getProgress(target_mc);
myTrace(loadProgress.bytesLoaded + " = bytes loaded at start" );
myTrace(loadProgress.bytesTotal + " = bytes total at start");
}
myListener2.onloadComplete = function (target_mc)
{
myTrace ("*********Second my_mcl instance*********");
myTrace ("Your load is done on movie clip = " + target_mc);
var loadProgress = my_mcl.getProgress(target_mc);
myTrace(loadProgress.bytesLoaded + " = bytes loaded at end");
myTrace(loadProgress.bytesTotal + " = bytes total at end" );
}
myListener2.onloadError = function (target_mc, errorCode)
{
myTrace ("*********Second my_mcl instance*********");
myTrace ("ERROR CODE = " + errorCode);
myTrace ("Your load failed on movie clip = " + target_mc + "n");
}
another_mcl.addListener(myListener2);
//Now load the files into their targets (using the second instance of MovieClipLoader)
another_mcl.loadClip("http://www.somedomain.somewhere.com/yetAnotherFile.jpg", _root.myMC4);
// Issue the following statements after the download is complete,
// and after my_mcl.onloadInit has been called.
// my_mcl.removeListener(myListener)
// my_mcl.removeListener(myListener2)


Se pricepe careva sa o reduca la ceriontele mele?

#5
tchocksoo

tchocksoo

    Member

  • Grup: Senior Members
  • Posts: 2,218
  • Înscris: 20.01.2004
ok hai sa lasam toata nenorocenia aia de cod deoparte si sa ne gandim la alternative mult mai simple. de ce in loc sa incarci jpeg nu incarci swf?

swf in care iti pui jpegul si un preloader clasic. din interiorul lui poti folosi getBytesLoaded ();

metoda e ineficienta totusi daca ai gen 1000 de poze.

vorbim

#6
nailbomb

nailbomb

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 04.07.2004
Nu pot sa fac asa pt ca galeria de poze jpeg este generata din script php.

#7
nailbomb

nailbomb

    New Member

  • Grup: Members
  • Posts: 6
  • Înscris: 04.07.2004
Am mai sintetizat eu help-ul ala stupid si am reusit sa fac sa mearga cat de cat dar nu inteleg.

Intr-un swf am un buton si un movieclip pozaMc

pe buton am actions:


on (press) {
pozaMc = new MovieClipLoader();
listener = new Object();

pozaMc.addListener(listener);

listener.onloadComplete = function() {
gotoAndStop(5);
};
pozaMc.loadClip("pic01.jpg", "pozaMc");
}


Am atasat si fisierul .fla de proba. Acum intrebarea:
unde gresesc de imi incarca frame-ul 5 inainte sa apara poza

PS: Rulati fisierul .fla cu optiunea de simulare download la banda mica 33k :P | ca altfel nu se observa

Attached Files



Anunturi

Neurochirurgie minim invazivă Neurochirurgie minim invazivă

"Primum non nocere" este ideea ce a deschis drumul medicinei spre minim invaziv.

Avansul tehnologic extraordinar din ultimele decenii a permis dezvoltarea tuturor domeniilor medicinei. Microscopul operator, neuronavigația, tehnicile anestezice avansate permit intervenții chirurgicale tot mai precise, tot mai sigure. Neurochirurgia minim invazivă, sau prin "gaura cheii", oferă pacienților posibilitatea de a se opera cu riscuri minime, fie ele neurologice, infecțioase, medicale sau estetice.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate