|
SWiSH Forum Forum użytkowników programów SWiSH |
 |
SWiSH Max - Unload
gremed - Sro 22 Gru, 2010 12:09 Temat postu: Unload Nie żeby mi się nie chciało. Ale przeszukałem wszystko i nie mogę znaleźć. Mam animację, na niej przycisk, klikam na niego, ładuje mi się zdjęcie na przykład, otwiera się w duszku. Chcę żeby zdjęcie się zamknęło po kliknięciu na nie. Ale lipa. Nie wiem co robię źle. Załączam pliki.
shastaan - Sro 22 Gru, 2010 14:57
Namieszałeś.
Kazałeś guzikowi ładować zdjęcie a "odładowywać" Movie Clipowi.
W załączniku masz przykład z 3 guzikami.
Jeden ładuje zdjęcie DO MOVIE CLIPU - każe Movie Clipowi je ładować (nie jak u Ciebie).
Drugi "odładowywuje" zdjęcie - wywułuje unloadMovie(); dla movie clipu, nie dla siebie.
Trzeci to kopia drugiego tylko niewidoczna i rozciągnięta nad movie clipem - by było wrażenie, że klikamy na zdjęcie.
Możesz w odpowiednich momentach dać _visible true/false by chować ten guzik, gdy zdjęcie nie jest załadowane.
gremed - Sro 22 Gru, 2010 15:45
Ok. Już sprawdziłem wg tych wskazówek i kumam o co chodzi. Jak pewnie zauważyłeś uczę się. I czasem przychodzi moment że pojawi się znak "stop" i nie ruszę dalej bo nie umiem wyeliminować błędu który robię. Tutaj nie wiedziałem że przycisk można rozciągnąć na całość. No i jak tworzę prostokąt, konwertuję go do klipu to pojawia się on pod nazwą "klip". A już któryś raz w przykładach spotkałem się z nazwa kontener. Czy to ma jakieś znaczenie?
Zauważyłem że jak pracuję na nazwie kontener to mogę w miejscu do którego ma być np. wyładowany film wskazać "kontener". Jeśli nie zmienię nazwy na kontener to w miejscu wyładowania mam tylko do dyspozycji "this" i "root". O co chodzi?
shastaan - Sro 22 Gru, 2010 20:46
Myślisz, że jest to znacznie bardziej skomplikowane niż jest w rzeczywistości.
To w zasadzie bardzo proste.
Jak konwertujesz coś na klip to zawiera się to w obiekcie o nazwie Movie Clip (bądź klip, jak twierdzisz, nie wiem jak w wersji pl).
Zawsze gdy coś władujesz do klipu, zaznacz go za pomocą wskaźnika (V) i w panelu properties nadaj mu nazwę, bo to pomaga się połapać w skrypcie i w konstrukcji całości. Jaką chcesz. Może to być "kopytko".
Ja (i większość choć trochę doświadczonych użytkowników swisha/flasha, o programistach nie wspomnę) nazywam rzeczy tak, bym wiedział jaka jest ich funkcja.
Ten klip nazwałem kontener bo on zawiera ładowane treści. Tylko dlatego tak się nazywa.
Jeśli nazwiesz swój movie clip "kopytkiem" to możesz mu kazać robić co zechcesz za pomocą kodów i słowa "kopytko".
Na przykład:
Kod: | on (release) {
kopytko.loadMovie("jakistam.swf");
}
|
Januszr - Sro 22 Gru, 2010 20:49
gremed, zobacz to co zrobiłem tutaj: http://swish.wodip.opole....p?p=23581#23581 - sądzę, że przyda się.
gremed - Sro 22 Gru, 2010 21:51
Dzięki shastaan. Co do tego kontenera to tak właśnie myślałem. Ale zbyt dużo mnie kosztuje czasu jeśli coś sobie ubzduram i tego się trzymam a to okazuje się jakąś fikcją. Więc czasem pytam o rzeczy nawet dla mnie prawie oczywiste. Chodzi tylko o to "prawie".
shastaan - Sro 22 Gru, 2010 22:14
Po pierwsze, kto pyta nie błądzi.
Po drugie, radę dam Tobie i wszystkim, którzy są jeszcze na tym etapie, że coś jak coś sobie ubzdurają to im nie działa albo nie działa im nie wiadomo dlaczego:
Jeśli macie jakiś problem to zapiszcie sobie plik, w którym ten problem występuje, zamknijcie go i stwórzcie nowy, w którym wyizolujecie ten problem. Ograniczycie wszystko co może mieć na niego wpływ i będziecie mogli badać tylko ten problem.
Innymi słowy, jeśli w scenie 5tej nie działa wam skrypt pod _root.menu.kolumna_prawa.kontener.guzik3.hit to zróbcie plik z prostokątem i wklejcie go pod prostokąt. Jak zadziała, zróbcie guzik3. Jak dalej działa, dodajcie kontener, etc...
Na ogół wam wyjdzie, że było dobrze, tylko błąd był Boogie wie gdzie. :]
Pozdrawiam.
gremed - Sro 05 Sty, 2011 10:31
shastaan napisał/a: | Namieszałeś.
Kazałeś guzikowi ładować zdjęcie a "odładowywać" Movie Clipowi.
W załączniku masz przykład z 3 guzikami.
Jeden ładuje zdjęcie DO MOVIE CLIPU - każe Movie Clipowi je ładować (nie jak u Ciebie).
Drugi "odładowywuje" zdjęcie - wywułuje unloadMovie(); dla movie clipu, nie dla siebie.
Trzeci to kopia drugiego tylko niewidoczna i rozciągnięta nad movie clipem - by było wrażenie, że klikamy na zdjęcie.
Możesz w odpowiednich momentach dać _visible true/false by chować ten guzik, gdy zdjęcie nie jest załadowane. |
Shastaan - gdybyś mógł mi pomóc rozkminić patent na użycie opcji "visible" byłbym wdzięczny. Załóżmy: mam przyciski, po kliknięciu ładują duże zdjęcie do duszka który je zakrywa (te przyciski). Co mam wpisać żeby oprócz zakrycia te przyciski stały się nieaktywne na czas w którym do duszka załadowane jest zdjęcie? Szukałem ale nie za bardzo mogę znaleźć. Załączam pliki. Brakuje tam opcji "unload" ale nie w tym jest problem.
maciey75 - Sro 05 Sty, 2011 18:17
gotowe rozwiazanie masz tutaj
gremed - Pon 10 Sty, 2011 16:44
Nadal mam problem z chowaniem przycisków. Załączam swi. Chodzi o to: po załadowaniu zdjęcia do kontenera chcę deaktywować przyciski pod spodem. Nie wiem jak to zrobić. Której akcji użyć? Przypisać akcję do przycisku czy do kontenera? (W tym swi działa tylko pierwszy button, nie ma unloadu itp - to się dorobi, akurat to już pojąłem, w końcowym wyglądzie cała strona będzie zawierała miniaturki-buttony które jeśli znajda się pod dużym zdjęciem mają być nieaktywne). Przykład który dostałem na forum nijak mi nie pomaga. Potrzebuje łopatologicznego tłumaczenia. Jeśli ktoś by miał chwilę to jeszcze bym prosił o poradę jak zrobić efekt wyszarzenia wszystkiego co jest pod załadowanym zdjęciem, na czas jak ono jest widoczne na pierwszym planie w kontenerze. Z góry dziękuję.
shastaan - Wto 11 Sty, 2011 09:33
Jeśli chcesz, żeby guzik się zrobił niewidoczny po wciśnięciu to logicznym rozwiązaniem jest wydanie tego polecenia w jego on(press/release). Więc przypisujesz 2 akcje do buttonu - loadMovie i _visible:
Kod: | on(release) {
kontener.loadMovie("cośtam.jpg");
button._visible = false;
} |
ścieżki może musisz pozmieniać bo nie patrzyłem w swi.
Oczywiście, unload dodany do kontenera też będzie musiał mieć visible, żeby guzik pojawił się z powrotem:
Kod: | on(release) {
kontener.unloadMovie();
button._visible = true;
} |
gremed - Wto 11 Sty, 2011 10:25
Ok. I do tego momentu to kumam. Ale za cholerę nie wiem jak dopisać akcję "visible". Jest gdzieś gotowa i tylko ja przypisuję obiekt i zmieniam "true-false" ? Gdzie? Mam to wprowadzić ręcznie? Jak? Zablokowałem się i nie ruszę. A jeszcze do tego pod kontenerem będzie 20 takich przycisków. i one wszystkie maja być niewidoczne jednocześnie. Czyli pewnie do kontenera muszę przypisać akcję "ukryj wszystkie przyciski jeśli jest załadowany film" ??, Tak? Wertowałem instrukcję, opis menu itp, ale nie ruszę.
Januszr - Wto 11 Sty, 2011 10:37
zapewne w zakładce skryptu wprowadza się skrypt, a skrypt przypisuje się do obiektu, którym może także być scena, jednak w twoim wypadku obiektem tym będzie przycisk. Jak masz pisać? Cóż - wydaje mi się, że najlepszym rozwiązaniem będzie użycie klawiatury do wprowadzania znaków.
Jak wygląda visible false i true możesz zobaczyć tutaj:
http://swish.wodip.opole....p?p=21400#21400
jak "zdeaktywować" akcję przycisku masz tutaj:
http://swish.wodip.opole....p?p=21982#21982
Niestety bardzo rzadko odpowiadam na wiadomości prywatne. A jeżeli na forum pytasz konkretną osobę o poradę to cierpliwie czekaj - bo np ja nie będę wcinał się pomiędzy wódkę a zakąskę
Powodzenia
shastaan - Wto 11 Sty, 2011 10:47
Dobrym rozwiązaniem będzie zgrupowanie wszystkich guzików w MC i nazwanie go menu i deaktywacja całego menu by z 20 poleceń zrobić jedno.
gremed - Wto 11 Sty, 2011 11:03
Ok. To ze zgrupowanie przycisków załapałem. I pewnie to zastosuję. Ale... Nie śmiej się teraz, mam problem z edycją tego pieprzonego skryptu. Tak! Właśnie tam nic nie mogę wpisać. Jak daję - "zdarzenie na kliknięcie myszy - załaduj film+ to pojawia się loadmovie, i pola do wypełnienia i przypisania konkretnych obiektów. I tutaj to wszystko gra. Ale nie wiem jak tam wprowadzić visible!!! Jeśli ręcznie to jak? Pole skryptu nie chce mi się edytować. Pewnie żeby mi to napisać musisz się cofnąć do momentu jak pierwszy raz odpalałeś swisha ale to właśnie jest ten mój problem.
shastaan - Wto 11 Sty, 2011 11:41
zobacz załącznik
gremed - Wto 11 Sty, 2011 13:34
No i tutaj lipa. Ja mam wersję "mini" a ona nie ma edytora skryptu.
[ Dodano: Wto 11 Sty, 2011 13:44 ]
Czy da się to obejść i wstawić wpis do skryptu w inny sposób czy muzę dysponować tym co mam?
Januszr - Wto 11 Sty, 2011 14:20
Upgraduj sobie do wersji zwykłej, komercyjnej, koniecznie w j. angielskim. W mini nie wiele zrobisz...
gremed - Wto 11 Sty, 2011 14:22
Oooookeeeejjjj. Ciemny jesteeem. Już widzę. Nie mogę edytować skryptu w wersji mini tak jak w pełnej. Ale w panelu "akcje" wszystko jest. Muszę tylko wybrać "akcję" i przypisać odpowiednią wartość zmiennej.
[ Dodano: Wto 11 Sty, 2011 14:24 ]
Zrobię to. Tylko na razie dołek finansowy. A dlaczego wersja angielska?
[ Dodano: Wto 11 Sty, 2011 14:25 ]
I czy to "niewiele zrobisz" to nie jest trochę na wyrost patrząc na moje doświadczenie?
shastaan - Wto 11 Sty, 2011 15:09
Moim zdaniem, wersja angielska dlatego, że polska utrudnia pracę ze skryptem, który i tak jest zawsze po angielsku. Ale mi łatwo mówić bo znam angielski :]
Nie znam wersji mini ale jeśli nie da się edytować skryptu to "niewiele zrobisz" nie ma nic wspólnego z Twoim doświadczeniem i nie jest na wyrost.
Januszr - Wto 11 Sty, 2011 15:22
Wersja angielska dlatego, że możesz upgadować do wersji BETA. W moim przypadku okazało się to niesamowicie ważne, ponieważ na wersji PL, która zawierała błędy, nie mogłem dokończyć projektu. Nie ma wersji testowych (beta) w językach innych niż angielski. Z tego powodu, nie można zarejestrować wersji eng, jeżeli kupiło się PL. Więc innymi słowy, jak będziesz miał PL to nie zrobisz upgradu do BETA - tylko musisz czekać na oficjalne wydanie - w przypadku SM3 - od 2009 nie ma nowego wydania
Ponadto nie zgodzę się z tłumaczeniami - SPRITE jako "duszek" Dalej idąc tym śladem: większość używa i pisze o MC (movie clip) a nie o "klipie filmowym" KF? itd...
Reasumując, ENG jest językiem komunikacji w programach i nie wyobrażam sobie jazdy jakbym miał pisać:
Kod: | WPrzypadku (wypuszczenie) {
idżdoScenyFilmowejIZagraj("ScenaFilmowa", 1);
} |
zamiast
Kod: | on (release) {
gotoSceneAndPlay("Scene_2", 1);
} |
PS. - nie wiem czy w pl wersji skrypt pl także tłumaczono
UFFFF....
A co do "niewiele zrobisz, to shastaan, już się bardzo słusznie wypowiedział.
gremed - Wto 11 Sty, 2011 15:31
Angielski znam tyle o ile jak to się mówi. I na pewno łatwiej mi pracować na programie którego się uczę po polsku. Co do edycji skryptu to nie ma tam możliwości w wersji MINI edycji na zasadzie notatnika ale konkretne polecenia wybiera się z listy w panelu akcje (I SĄ TO PLECENIA PO ANGIELSKU, nawet w wersji PL, jak by było po polsku tak jak napisałeś to rzeczywiście komedia). Tak jak na zdjęciu. I o to mi chodziło. Nie wiedziałem gdzie szukać polecenia "visible". Wy mi piszecie "klawiatura i pisz" a ja nie wiem gdzie mam pisać. Problem z ukrywaniem przycisków rozwiązałem. Działa. Rozumiem w czym rzecz. I jadę dalej. Dzięki za pomoc.
[ Dodano: Wto 11 Sty, 2011 21:33 ]
Działam i nawet coś z tego wychodzi. Jeden problem (wiem jak go obejść więc nie wiem czy to problem). Nie załączam swi bo myślę że nie trzeba. Więc tak:
---- mam miniaturki które są buttonami i one są zgrupowane w klip "menu".
---- klikam button - ładuję do kontenera zewnętrzny swf , w tym samym czasie ukrywam menu za pomocą "menu._visible = false;"
---- w tym zewnętrznym swf jpg pokazujące się z efektem) jest button "unload" - klikam go i swf się odładowuje.
I do tej pory jest ok. Ale nie wiem co zrobić żeby pokazać z powrotem menu.
1. Czy można buttonowi w ZEWNĘTRZNYM SWF przypisać jakąś akcję która odnosi się do głównego swf-a do którego ten zewnętrzny jest tylko na chwilę ładowany? (w tym przypadku uwidocznienie menu po wyładowaniu)
2. Czy tą akcję uwidocznienia menu trzeba przypisać do kontenera z którego wyładowany zostanie ten zewnętrzny swf?
3. Czy lepiej zrobić przycisk "unload" w głównym swf-ie i ukazywać go tylko w momencie ładowania tego zewnętrznego? (wtedy przypisuję mu oprócz akcji "unload" również akcję "menu._visible = true;") - i to wiem jak zrobić, i będzie działać, ale może da się to zrobić w sposób nr 1 albo nr 2? Jeśli tak to jak?
[ Dodano: Sro 12 Sty, 2011 11:03 ]
Mógłbym prosić o odpowiedź , nie wiem w którą stronę iść dalej.
maciey75 - Sro 12 Sty, 2011 17:26
Ja bym w ogole zrobil inaczej. visible powoduje, ze menu Ci sie pokazuje albo znika bez efektu. Po to jest swish aby cos tu pokombinowac
Zrob chowane/wyjezdzajace menu gdzie tylko bedzie gdzie na skraju widoczny napis menu. Kiedys zrobilem cos takiego, patrz zalacznik.
gremed - Sro 12 Sty, 2011 18:50
Tylko że moim "menu" o którym pisałem są zdjęcia biżuterii które po wejściu na stronę mają ją wypełniać jako miniaturki. Po kliknięciu miniaturki ma się pokazać pełne zdjęcie, ukryć się mają wszystkie miniaturki a na pełnym zdjęciu ma być "krzyżyk" unload który po kliknięciu przywróci wszystko do poprzedniego stanu.
maciey75 - Sro 12 Sty, 2011 19:17
to proponuje lightboxa
gremed - Sro 12 Sty, 2011 19:21
Taaaa. Ledwo zacząłem rozumieć co do mnie piszecie a teraz mam się domyślać czym się je lightboxa. Przez lightboxa są prezentowane zdjęcia na mojej stronie teraz. A docelowo chcę je umieścić we flashu w formie galerii.
shastaan - Sro 12 Sty, 2011 19:43
gremed napisał/a: |
I do tej pory jest ok. Ale nie wiem co zrobić żeby pokazać z powrotem menu.
1. Czy można buttonowi w ZEWNĘTRZNYM SWF przypisać jakąś akcję która odnosi się do głównego swf-a do którego ten zewnętrzny jest tylko na chwilę ładowany? (w tym przypadku uwidocznienie menu po wyładowaniu)
2. Czy tą akcję uwidocznienia menu trzeba przypisać do kontenera z którego wyładowany zostanie ten zewnętrzny swf?
3. Czy lepiej zrobić przycisk "unload" w głównym swf-ie i ukazywać go tylko w momencie ładowania tego zewnętrznego? (wtedy przypisuję mu oprócz akcji "unload" również akcję "menu._visible = true;") - i to wiem jak zrobić, i będzie działać, ale może da się to zrobić w sposób nr 1 albo nr 2? Jeśli tak to jak?
|
Zaczynasz kombinować dokładnie tak jak należy :]
Teraz tylko zacznij to sprawdzać zamiast pytać to będziesz z grubsza samowystarczalny.
ad. 1) Tak, można. Kod: | _root.menu._visible = true; | - root odniesie cię do "szczytu" hierarchii (drzewa w panelu "outline", łopatologicznie mówiąc.). Tam znajdzie menu.
ad. 2) Nie, nie trzeba. Ale można :] Tym samym kodem co powyżej.
as. 3) Sam już wiesz
maciey75 - Sro 12 Sty, 2011 19:44
Lightboxa mozesz wywolac spokojnie z flasha, ale rozumiem ze chcesz miec calosc we flashu tak?
shastaan - Sro 12 Sty, 2011 19:55
maciey75, możesz pokazać przykład? chętnie się zaznajomię. =]
maciey75 - Sro 12 Sty, 2011 21:04
Taki wymiatac z jak Ty nie wie? To jest powazne pytanie.
Działa pierwszych 6 zakladek - klik
gremed - Sro 12 Sty, 2011 21:14
shastaan napisał/a: | Zaczynasz kombinować dokładnie tak jak należy :] |
Dzięki shastaan. Sam widzę że już trochę inaczej mi się z Wami rozmawia i czyta to co piszecie. Tutaj miałem problem który ciągle pojawiał się w testach. Teraz wiem że chodzi o "root". Jutro to sprawdzę.
maciey75 - tak chcę mieć galerię we flashu, generalnie to moja strona działa i nie musiałbym nic zmieniać. Tutaj bardziej chodzi o to że kupiłem swisha i zawziąłem się żeby go poznać. Gdyby chodziło o potrzebę wstawienia galerii to nic prostszego jak zlecić-zapłacić-wstawić i po problemie.
Jak jutro uda mi się skończyć to podam linka.
shastaan - Sro 12 Sty, 2011 22:56
maciey75, że się da to Ci wierzę na słowo, nie musisz pokazywać, chodziło mi bardziej o przykład zestawu html+swf+js+swi ;]
maciey75 napisał/a: | Taki wymiatac z jak Ty nie wie? To jest powazne pytanie. |
Nigdy nie potrzebowałem tego użyć a nie znam się na js więc się nie bawię bez potrzeby.
Na szczęście świat jest jeszcze pełen rzeczy, o których nie mam pojęcia :]
Ale jak masz gotowe i się chcesz podzielić to będziemy wszyscy zobowiązani. Najlepiej załóż nowy temat z "lightbox" w nazwie.
mielu - Czw 13 Sty, 2011 09:25
jeśli chodzi o "lightbox" temat był kiedyś poruszany i działa to ale z lb v1.0, gdzieś mam pliki to mogę podesłać
shastaan - Czw 13 Sty, 2011 09:57
Był poruszany wiele razy ale nie znalazłem schematu czy przykladu do wykorzystania. Albo odpowiedzią było "szukaj hasła lightbox" albo próba budowy lightboxowatej galerii w swish.
Podeślij, podeslij :]
Januszr - Czw 13 Sty, 2011 12:10
shastaan, w moich wypocinach (załączniki) znajdziesz pod hasłem lightbox.
http://swish.wodip.opole....p?p=21385#21385
http://swish.wodip.opole....p?p=21664#21664
a może nie o to pytasz?
PS. Oczywiście popieram i przyłączam się do prośby, aby autor tematu załączył to do czego próbował odnieść się.
mielu - Czw 13 Sty, 2011 13:12
W załączniku przykład.
shastaan - Czw 13 Sty, 2011 13:16
Nie o to. Te widziałem. Chodzi mi o podpięcie skryptu lightbox pod flash.
Ty proponujesz stworzenie podobnego efektu wewnątrz flash.
[ Dodano: Czw 13 Sty, 2011 13:20 ]
Dzięki, mielu, dokładnie o to chodziło.
Nie spodziewałem się jednak, że sprawa będzie tak mało skomplikowana wewnątrz swi :]
mielu - Czw 13 Sty, 2011 13:50
proste wywołanie js
maciey75 - Czw 13 Sty, 2011 14:40
jak juz jedziemu OT to moze ktos ma pomysl jak ten bajer wywolac z flasha bo to dla mnie za trudne
http://reghellin.com/milkbox/
If you want to lauch Milkbox from flash, simply use ExternalInterface:
import flash.external.ExternalInterface;
//if you need, load some xml:
ExternalInterface.call("milkbox.addGalleries",'galleries.xml');
//AS2: ////////////////////////////////////
sampleButton.onRelease = function(){
ExternalInterface.call("milkbox.showGallery",{gallery:'mygallery', index:3, autoplay:true});
}
[ Dodano: Czw 13 Sty, 2011 14:42 ]
shastaan napisał/a: | Nie o to. Te widziałem. Chodzi mi o podpięcie skryptu lightbox pod flash.
Ty proponujesz stworzenie podobnego efektu wewnątrz flash.
[ Dodano: Czw 13 Sty, 2011 13:20 ]
Dzięki, mielu, dokładnie o to chodziło.
Nie spodziewałem się jednak, że sprawa będzie tak mało skomplikowana wewnątrz swi :] |
no i jak fajnie wyglada
shastaan - Czw 13 Sty, 2011 15:03
A macie pomysł jak zrobić, żeby flash się chował pod tym shaderem? :]
gremed - Czw 13 Sty, 2011 15:52
Hehehe. Dobra panowie. Znów zaczynacie mówić w obcym języku. To ja proszę o bardziej przyziemną poradę. Zrobiłem sobie takie coś: http://gremed.cba.pl/Nowa%20galeria/srebro.html (działają tylko zdjęcia) . Ten przycisk "close" jest ładowany razem ze zdjęciem jako zewnętrzny swf. Dzięki Waszym poradom to wszystko działa. Ale gdybym do tego zewnętrznego swf-a (albo do głównego) dorzucił przyciski "prev" - "next".... I tu mam problem. Taki przycisk musiałby jednocześnie wyładować jeden swf i załadować następny (więc raczej musiałyby być one przypisane do ładowanego swf żeby wiedziały który akurat się wyświetla i który jest następny). Nie wiem jak to zrobić, a i szukanie nie daje efektów. Czy to jest w stanie zrobić standardowy button?
shastaan - Czw 13 Sty, 2011 18:43
Jest.
Elegancko byłoby wprowadzić zmienną, na przykład "N" która będzie oznaczać numer zdjęcia.
Skrypt ładujący zdjęcie nr 3 (na przykład) wyglądałby wtedy tak:
Kod: | on release {
_root.N = 3;
_root.kontener.loadMovie(_root.N+".jpg");
} |
Przycisk next wyglądałby tak:
Kod: | on (release) {
_root.N += 1; // powiększamy N o 1 - czyli wybieramy kolejne zdjęcie
_root.kontener.loadMovie(_root.N+".jpg");
} |
Analogicznie, prev:
Kod: | on (release) {
_root.N -= 1; // pomniejszamy N o 1 - czyli wybieramy kolejne zdjęcie
_root.kontener.loadMovie(_root.N+".jpg");
} |
Jeszcze jedna rada, zaznacz sobie wszystkie jpgi i w ich właściwościach zaznacz opcję "allow smoothing" bo Ci się straaaasznie pikselizują przy efektach.
---
EDIT: Poprawiłem błędy w kodzie - zmienne typu number były w cudzysłowiach, o ja niedbały .
gremed - Czw 13 Sty, 2011 20:58
Allow smoothing zrobione. Rzeczywiście jest różnica. Co do reszty to zawiesiłem się. Te zdjęcia to są zewnętrzne swf-y z ładowane powiedzmy z folderu "img". Czyli jak zastosuję zmienną to on wtedy sam rozpozna kolejność plików we folderze? Czy trzeba jakoś zmodyfikować nazwy? Gdzie wpisuję ścieżkę dostępu ?
on (release) {
_root.N += 1;
_root.kontener.loadMovie("_root.N"+".jpg");
}
Czy w miejscu gdzie mi wpisałeś "jpg"? Jakbyś mi mógł napisać przykład. Załóżmy że mój swf do załadowania nazywa się S05.swf. Poprzedni S04, następny S06 itd. Ścieżki to img/S05.swf. Z góry dziękuję.
shastaan - Pią 14 Sty, 2011 12:05
W wypadku gdy plik się będzie nazywać S5.swf (pozbywamy się zera z nazwy bo N to zmienna typu number więc nie przyjmie wartości 05 tylko 5) będzie to wyglądało tak:
Kod: | on (release) {
_root.N =5;
_root.kontener.loadMovie("img/S"+N+".swf");
} |
Nie definiowałeś zmiennej "img/S" więc on uzna to za ciąg znaków, "N" zamieni na wartość N - w tym wypadku 5, ".swf" to znów ciąg znaków. Suma tych wartości da img/S5.swf - czyli ściężkę dostępu do ładowanego pliku.
---
EDIT: Poprawiłem błędy w kodzie - zmienne typu number były w cudzysłowiach, o ja niedbały .
gremed - Pią 14 Sty, 2011 13:16
Więc tak. Te skrypty które mi podałeś nie za bardzo mi tutaj pasują. Bo jeśli button "next" jest integralną częścią mojego swf-a -który się ładuje z folderu img to czemu nie mogę mu po prostu przypisać funkcji "loadmovie" numer jakiś tam? Wiem które zdjęcie jest akurat otwarte i bez problemu mogę przypisać funkcję dla buttona na zdjęciu nr 5 żeby otwierał zdjęcie nr 6 itd. Bo dla piątki "next" to jest szóstaka a "prev" czwórka i to jest stałe. A jeśli te buttony nie będą w zewnętrznym swf tylko w animacji głównej to też mi nie pasują te skrypty. To co próbowałem robić to dla buttona next przypisałem "unload" aktualnie załadowany] swf i "loadmovie" następny swf (sam określiłem numer - bo wiem który jest następny). Ale te dwie komendy chyba się ze sobą kłócą. ? Próbowałem zrobić swi do wysłania ale wychodzi mi za duży i nie puszcza. Mogę wysłać na mail który masz w profilu?
shastaan - Pią 14 Sty, 2011 15:25
Możesz to zrobić tak jak mówisz. Da się i zadziała. Ale to strasznie mało "pro" rozwiązanie.
Będziesz musiał w każdym swie lub do każdego swfa robić inny guzik next i inny guzik prev.
Wprowadzenie zmiennej służy temu, by mieć jeden guzik next i jeden guzik prev w całym projekcie.
Kod: | {
unloadMovie();
loadMovie();
} | to jest bez sensu, loadMovie i tak zastąpi ("unloadnie") wcześniej załadowany "movie" więc możesz spokojnie wywalić unload.
Nie wysyłaj mi na maila nic. Zrób mniejszy plik, z 5ma jpgami, najlepiej zoptymalizowanymi. Wtedy się zmieści w załączniku do posta. Wszyscy będą mogli skorzystać. Pomagamy Ci zrobić coś na czym ewidentnie będziesz zarabiał i ewidentnie nie chcemy za to kasy. Robimy to po to by użytkownicy forum mogli się uczyć. Dopóki będziesz miał takie samo podejście ja będę Ci pomagał chętnie.
Mój mail służy do kontaktu w sprawie zleceń i szkoleń.
gremed - Pią 14 Sty, 2011 16:01
Ok. Wieczorem podziałam. Co do pomocy to zdaję sobie sprawę że w niektórych miejscach musiałbym za to płacić. I nawet myślałem żeby zrobić jakiś większy kurs. Problem tkwi w wolnym czasie. Dlatego podwójne dzięki za pomoc. Wiem że normalnie za to bierzesz kasę. Ale jak będziesz w Krakowie to adres sklepu znasz. Wpadnij, zrobimy ładny rabacik.
[ Dodano: Pią 14 Sty, 2011 17:16 ]
No więc mam. Coś takiego jak w swi.
1.Zdjęcia jako zewnętrzne swf.
2.Przyciski prev-next będą na głównym swf.
3. Przycisk "unload" będzie docelowo na każdym ładowanym swf (ale on mi nie sprawia problemu).
Proszę o skrypt przy przyciskach prev i next. Jak robiłem to co miałem polecone to kończyło się na wyładowaniu bieżącego zdjęcia i nie załadowaniu następnego. Nie wiem gdzie miałem błąd. Przeglądałem parę razy i nic.
shastaan - Pią 14 Sty, 2011 18:16
Zrobiłem Ci to ze zmienną N.
Jest pewna niedoróbka, którą powinieneś zauważyć i samemu poprawić i nam tu o tym napisać :]
Pozdro.
gremed - Pią 14 Sty, 2011 18:34
No super. Będę działał. Co do niedoróbki to nie wiem. Ale występuje sytuacja gdy nie mamy nic załadowane, naciskamy np. "prev" i ładuje nam się zdjęcie (w dodatku bez ukrywania menu przycisków). Więc może trzeba by zrobić jakiś warunek dla tych przycisków żeby nie działały w momencie jak menu jest "visible - true". Ale czy to jest to - nie wiem. Jeśli tak to ... jaki warunek?
shastaan - Pią 14 Sty, 2011 19:27
To jedno z rozwiązań. Jaki warunek? Właśnie mi o to chodzilo, żebyś sam to wykombinował
next:
if(_root.N<3 && _root.menu._visible = false) - na przykład
gremed - Pią 14 Sty, 2011 20:13
Hehe. Taaaakiii waaaruuunek? Będę próbował. Tylko jak nie mam edytora skryptu więc wszystkie polecenia muszę odnaleźć w zakładkach i wybrać. Ale jak wnioskuje to jest instrukcja warunkowa "if...". A resztę wpiszę. To znaczy przepiszę bo jej nie rozumiem. Ale domyślam się że kluczowe tutaj są znaki "&&"?
[ Dodano: Pią 14 Sty, 2011 21:40 ]
Próbowałem wpisać ten warunek. Dla przycisku next:
if(_root.N<3 && _root.menu._visible = false). Ale wyskakuje mi błąd. Przyjmuje natomiast if(_root.N<3 && _root.menu._visible_false) . Nie wiem dlaczego tak się dzieje. W dodatku nie działa przycisk po wpisaniu tego warunku (bo jak zamiast "=" wpiszę"-" to pewnie nie ma prawa działać ) A chciałem się zapoznać z tym "if-em" bo może mi się przydać. Prosiłbym o modyfikacje mojego swi przy pomocy tej opcji. Póki co to prościej będzie ukryć przyciski "next-prev" po wyładowaniu klipu z kontenera i po problemie. Tak mi się wydaje
[ Dodano: Sob 15 Sty, 2011 01:19 ]
Siedzę sobie w pracy i dłubię. Druga w nocy. No i gotowe. Jak teraz? http://gremed.cba.pl/srebro/srebro.html (nieaktywny jest przycisk "strona główna" i "next"). Zrobiłem to tak jak pisałem.
1.Przycisk z miniaturką:
a. chowa wszystkie miniaturki
b. ładuje zewnętrznego swf-a z dużym zdjęciem
c. "idzie" do klatki gdzie startuje menu z przyciskami "prev" i "next"
2. Przycisk "unload" na zdjęciu:
a. wyładowuje swf-a
b. uwidacznia miniaturki
c. idzie do klatki gdzie nie ma jeszcze menu z przyciskami "prev" i "next"
3. Przyciski "prev" "next" zrobiłem tak jak mi pisałeś.
shastaan - Sob 15 Sty, 2011 13:54
http://swish.wodip.opole....wforum.php?f=22 - już Ci to wklejałem, wszystko z tego linka musisz kumać. Tym razem lekcja 20sta.
Bez edytora skryptu możesz chyba złożyć ze sobą dwa ify:
Kod: | if(_root.N<3) {
if(_root.menu._visible = false) {
_root.N += 1;
etc.
}
} | i zadziała tak samo jak z &&
Kup se SWiSH Max'a - edytor skryptu jest wporzo.
[ Dodano: Sob 15 Sty, 2011 14:02 ]
&& to operator logiczny "i". Kto nie zna operatorów ten jest jajo. :]
http://help.adobe.com/pl_.../operators.html
gremed - Sob 15 Sty, 2011 14:48
Ok. Mam nadzieje że choć trochę pamiętasz jak pierwszy raz zobaczyłeś kartkę z takimi operatorami symbolicznymi . Teraz i tak dzieli mnie przepaść od tego co wiedziałem jeszcze miesiąc temu. Ale nadal jest ciężko. Nieraz moim problemem jest nie to że nie mogę czegoś znaleźć tylko to że nie wiem czego szukać, o co zapytać. Co do pełnej wersji swisha to kupię na pewno. Ale wersja mini ma wg mnie jeden plus. Nie posiadając edytora skryptu zmusza mnie do wyszukania w menu i poskładania poszczególnych poleceń w całość. I zauważyłem że to mi dużo daje. Nieraz, gdyby pojawiło się zmęczenie i zniechęcenie skończyło by się na opcji "kopiuj-wklej". Ale czy to by mnie czegoś nauczyło? Nie wiem. Póki co dzięki za pomoc. To co potrzebuję do moich galerii już umiem zrobić (a jak rysowałem pierwszy prostokąt to znałem tylko "loadMovie"). Teraz tylko muszę popracować nad szatą graficzną i walorami estetycznymi. No i pewnie odezwę się jak będzie problem.
[ Dodano: Czw 27 Sty, 2011 00:57 ]
http://www.emeraldkrakow.pl/oferta.php?id=49
No i zrobione. Galerie srebra to "wasza wiedza+chęć pomocy+moje zawzięcie+czas". Myślę że każda następna rzecz przyjdzie mi teraz łatwiej. A tutaj jak zobaczycie jakieś niedociągnięcia to chętnie wysłucham rad. Co do wizualnego wyglądu chciałem zachować podobieństwo do strony właściwej-głównej. I myślę że w miarę to się udało.
|
|