Autor Zpráva
Kambo
Profil *
Ahoj,
mám následující problem: Nahrávam do dokumentu obrázky, které mají ale pokaždé jinou velikost a potřebuji aby se pod nima objekty (jmenovitě tlačítka a text) posunuli tak aby nezůstaly v tom obrázku....
Předem díky za odpověď.....
Hanz
Profil
Kambo
Po načtení si musíš zjistit velikost pomocí _height a potom posunout zbytek pomocí _y
Kambo
Profil *
To pěkné to se mi povedlo ale má to jeden háček, když klepnu na tlačítko které to má provést tak text poprvé zůstane na svém místě a teprve po druhém stisknutí se posune na žádanou pozici...

Kód:

on (press) {
trace("press");
trace("New Image Height: " + _root.Image._height);
_root.Image.loadMovie("diaptomus.jpg");
trace("New Image Height: " + _root.Image._height);
trace("Image y: " + _root.Image._y);
_root.Info._y = _root.Image._height + _root.Image._y ;
trace("New Text position: " + (_root.Info._y = _root.Image._height + _root.Image._y) );
}

Výpis z Output pomocí trace:

První stisk tlačítka:

press
New Image Height: 194
New Image Height: 194
Image y: 12.35
New Text position: 206.35

Druhý stisk tlačítka:

press
New Image Height: 231
New Image Height: 231
Image y: 12.35
New Text position: 243.35

Předem díky za odpověď....
Kambo
Profil *
Vypadá to že Flashi chvilku trvá než hodnotu Image._height aktualizuje podle momentální velikosti MC...
dredie
Profil *
Podle me je problem v tom ze akce loadMovie da prikaz k nacteni obrazku, nicmene nacteni obrazku trva dele nez spusteni skriptu na tomto framu, tudiz ve skutecnosti zadas hodnoty nacitaneho obrazku jeste predtim, nez se realne nacte, tudiz chces po flashi rozmery neceho, co jeste neexistuje.

D.
XXX
Profil
dredie ma pravdu. chces menit pozici tlacika a textu ve chvili, kdy teprve das prikaz pro nacteni obrazku. V tu samou chvili chces vsechno posouvat, ale obrazek jeste neni nacteny, takze se to nastavi podle starych souradnic, proto ti to funguje vzdycky az na dalsi kliknuti. Nacitej obrazky pres movieClipLoader a ne metodou loadMovie a pak vse vyresis pomoci onLoadComplete ;)
dredie
Profil *
XXX - onLoadComplete bohuzel v teto situaci muze selhavat, aspon ja s tim mam ty zkusenosti, ze objekt, byt je oficialne nacteny, jeste neexistuje na scene (scena se generuje az po precteni skriptu na framu), tudiz je dost dobre mozne, ze to bude davat stejny vysledek. Ja se s timto problemem setkavam pri externim nacitani swf a jeste jsem neprisel na to, cim to muze byt.

Typicky priklad toho chovani je ten, ze pokud mas myMovieClip v externim souboru, tak po akci onLoadComplete funguje napr. _level5.stop(); ale _level5.myMovieClip.stop(); ne... aspon takhle se to chova mne. A jak uz jsem rekl neprisel jsem zatim, jestli je to chyba moje nebo redering pipeline flashe.

D.
Kambo
Profil *
Díky moc všem za odpověď po použití movieClipLoader to všechno funguje ja má.
XXX
Profil
dredie
no ja mam s onLoadComplete dobre zkusenost, ale nechci tvrdit neco, co by nebyla prada, kazdopadne pokud jde o nacitani jen samotneho obrazku, tak si myslim, ze to vyborne vyresi tenhle problem. Dalsi vnoreny movieClip, to je kazdopadne neco jineho a nedam ruku do ohne za to, ze by to fungovalo,ale tady je to dostacujici ;)
dredie
Profil *
XXX - pravdepodobne jde o to, ze obrazek v sobe nema zadne dalsi vnorene symboly, tudiz je to neco jako v rpikaldu co jsem popsal (adresace levelu je bezproblemu) - pouze mi pripada zvlastni ze by vyvojari z macromedii predpokladali, ze externi swf soubory nebudou obsahovat vnorene symboly....?

D.
XXX
Profil
dredie
no Flash jako takovy je plny zahad. clovek si casto mysli, ze je neco silene stupidniho a najednou to vubec nejde tak, jak se to zda logicke :( Myslim ze tam maji vyvojari jeste spoustu nevychytanech musek, spis bys mozna rekl velkych much ;)
dredie
Profil *
XXX - tjn treba prace s textem - to je asi nejsilenejsi vec na kterou jsem ve flashi zatim narazil.... zkouset animovat dynamicky nacitany text je za trest :D

D.
Toto téma je uzamčeno. Odpověď nelze zaslat.