[ Ljubisas @ 08.10.2004. 18:56 ] @
Koji actionscript treba upisati u button, da mi se prozor smanji prvim klikom (na rezoluciju u kojoj je flash i radjen), a potom ako neko hoće da vrati na fullscreen, da se drugim klikom to i ostvari...

Znaci dve f-je u jednom button-u, naizmenicno.

Zna li neko?
[ NeoDesign @ 08.10.2004. 23:00 ] @
Evo ga konkretan primer zasto je DOBRA PRAKSA dinamicka obrada dogadjaj :)

1. Prvo napravi dugme i dovuci ga na scenu
2. Zadaj mu "instance name" npr. mojeDugme.

zatim u GLAVNOJ VREMENSKOJ OSI (znaci ne "na" dugmetu) unosis sledeci kod :

Code:


//sta ce da se desi kada kliknes na dugme (prvi put)
mojeDugme.onRelease = povecaj;

function povecaj() {
    //ovde ide code za maximize
    this.onRelease=smanji;
}
function smanji(){
    //ovde ide kod za minimize
    this.onRelease=povecaj;
}


kao sto vidis, dinamicki menjamo sta ce da se desi kada se klikce na dugme :)

p.s. sve ovo pisem iz glave (posto na net idem sa Linuxa - pa nemam Flash "pri ruci") pa ako ne valja, ti reci pa da ga menjam :)
[ Ljubisas @ 09.10.2004. 00:23 ] @
Napisao sam sledeci kod i stavio ga u glavnu vremensku osu (u drugi frejm drugog lejera).


Code:

MojeDugme.onRelease = povecaj;
function povecaj() {
    fscommand("fullscreen", "true");
    this.onRelease = smanji;
}
function smanji() {
    fscommand("fullscreen", "false");
    this.onRelease = povecaj;
}



Ovaj skript nema greske, ali ne radi iz nekog razloga.

Pri tome sam iz postojeceg buttona (MojeDugme) izbrisao postojeci kod koji je bio od ranije.




[ NeoDesign @ 10.10.2004. 19:55 ] @
Ajde baci mi na [email protected] fla fajl (samo izbaci slike i ostale gluposti koje povecavaju celu stvar :) pa cemo da ga resimo :)
[ 4txx @ 11.10.2004. 12:57 ] @
koje crne funkcije....

prvo pustis film da ide bez fillscreen-a.

on (release) {
if (!fsc) {
fscommand("fullscreen", true);
fsc = true;
} else {
fscommand("fullscreen", false);
fsc = false;
}
}

ok???
[ Ljubisas @ 11.10.2004. 13:45 ] @
ne radi ni ovo, a uradio sam kako si rekao.

verovatno nesto treba izmeniti.

iako je syntax OK
[ Ljubisas @ 12.10.2004. 17:55 ] @
Vladimire poslacu, ti fla samo dok jos nesto dovrsim, i dok izbacim nepotrebne stvari iz library.

pozdrav
[ NeoDesign @ 12.10.2004. 22:25 ] @
Citat:
koje crne funkcije....

prvo pustis film da ide bez fillscreen-a.

on (release) {
if (!fsc) {
fscommand("fullscreen", true);
fsc = true;
} else {
fscommand("fullscreen", false);
fsc = false;
}
}

ok???


Ma sve je to lepo i to ce sve da radi, ja sam mu samo dao "optimalnije" resenje. Sa tim se moras sloziti :)
[ Vranac @ 13.10.2004. 05:35 ] @
Citat:
NeoDesign: Ma sve je to lepo i to ce sve da radi, ja sam mu samo dao "optimalnije" resenje. Sa tim se moras sloziti :)


Izvini ali "optimalnije" resenje se nalazi izmedju onog sto si ti predlozio i onog sto je 4txx predlozio

Code:

myButton.onRelease = function {
  if (!fFullScreen) {
    fscommand("fullscreen", true);
    fFullScreen = true;
  } else {
    fscommand("fullscreen", false);
    fFullScreen = false;
  }
}
[ noviKorisnik @ 13.10.2004. 07:34 ] @
aj' još malo kraće
on (release) {fscommand ('fullscreen', fsc = !fsc);}

Ljubiša, komanda za fullscreen radi samo iz samostalnog Flash playera.

Pogledaj http://www.macromedia.com/supp...ments/fscommand_projectors.htm
[ Ljubisas @ 13.10.2004. 08:49 ] @
Radi!

Verovatno su radila i prethodna resenja, nego ja nisam code stavio na pravo mesto.

Button sam napravio iz drugog button-a (flash-ov gel pause), i nisam code stavio u taj sorce button, nego ovaj koji se vidi.
To je izgleda bila greska.


Hvala svima


pozdrav!
[ Vranac @ 13.10.2004. 13:18 ] @
@NoviKorisnik

Izmedju kraceg i citljivjeg koda, ja sam uvek za citljiviji.
Nadam se da se slazes samnom
[ noviKorisnik @ 13.10.2004. 14:49 ] @
Citat:
Vranac:
Code:

myButton.onRelease = function {
  if (!fFullScreen) {
    fscommand("fullscreen", true);
    fFullScreen = true;
  } else {
    fscommand("fullscreen", false);
    fFullScreen = false;
  }
}

Meni to ipak nije zadovoljavajuće čitljivo jer ima suvišnosti, a pogotovo što sadrži i grešku.

Evo popravni, bez trikova -

Code:
myButton.onRelease = function ()
{
    fFullScreen = !fFullScreen;
    fscommand("fullscreen", fFullScreen);
}
[ Vranac @ 13.10.2004. 15:04 ] @
Za gresku si u pravu, ali za skracenu verziju se ne slazem,
but then again different storkes for different folks
[ NeoDesign @ 13.10.2004. 22:41 ] @
Ljudi pa, ja ipak mislim da je moje resenje optimalno.

Zasto?? Zato sto kao sto vidite, ne koristim NI JEDNU promenjivu. Ko razume principe programiranja, razumece :)

A citljivo nije ni jedno od predlozenih jer [on(release)] ja moram da jurim po ekranu. Zamislite situaciju da treba da jurim klip, u klipu, pa jos da nadjem dugme. Ovako [mojeDugme.onRelease] SAV KOD je na jednom mestu. Nisu u Macromediji dzaba uvodili ovaj pojam (dinamicka obrada dogadjaja).
[ noviKorisnik @ 14.10.2004. 02:50 ] @
sooper, ali ja tvrdim da ni jedno od predloženih rešenja nije optimalno jer svako od njih ima bug.
[ Ljubisas @ 14.10.2004. 14:28 ] @
Znate li mozda odgovor, na ovo:

http://www.elitesecurity.org/tema/72609
[ NeoDesign @ 14.10.2004. 15:38 ] @
Ja mislim da moje resenje nema bug (ali nisam siguran jer ga nisam probao)
ali ne moze da se koristi sa:
Code:
fscommand("fullscreen", "true");

jer to je nemoguce i ne daje nikakav efekat.

Ali sa odgovarajucim JavaScriptom ...
[ 4txx @ 14.10.2004. 18:39 ] @
Ma sva resenja su dobra... jer rade. Samo je razlika gde cete da smestite kod...

Citat:
A citljivo nije ni jedno od predlozenih jer [on(release)] ja moram da jurim po ekranu. Zamislite situaciju da treba da jurim klip, u klipu, pa jos da nadjem dugme. Ovako [mojeDugme.onRelease] SAV KOD je na jednom mestu. Nisu u Macromediji dzaba uvodili ovaj pojam (dinamicka obrada dogadjaja).


Sto da ne :p
Kod manjih prezentaija ti nije ni problem da pronadjes, a kod vecih ti je to jos pogodnost (da podelish)... jer kad imas gomilu skripta bilo bi bolje da za odrenjene delove filma imas posebne skripte...

ovde pravimo neku igru... ogroman skript.... najjace da mogu sve da stripam u _root, pa sve je podeljeno!
http://www.elitesecurity.org/tema/64391/3
[ Ivan Stanojevic @ 14.10.2004. 21:51 ] @
on (release) {fscommand ('fullscreen', fsc = !fsc);}

evo danas nesto naucih, fsc = !fsc

najbolje resenje od ponudjenih...


[ Ivan Stanojevic @ 14.10.2004. 21:55 ] @
e samo update:

Citat:

on (release) {fscommand ('fullscreen', fsc = !fsc); }


Moze i krace, jer je nepotreban tacka-zarez

on(release){fscommand('fullscreen',fsc=!fsc)}

[ noviKorisnik @ 15.10.2004. 07:42 ] @
(... nikada neću imati najkraći kod jer volem da koristim delimitere po PS-u;)

LM - onaj "bug" koji sam spominjao da je prisutan kod svih rešenja je u nepostojanju direktne veze trenutnog stanja aplikacije (fullscreen ili ne) i akcije koja se dešava upotrebom dugmeta.

Promena fullscreen stanja moguća je i bez pritiska na dugme, bilo putem AS ili korisnički iz menija ili s tastature (Ctrl+F). Nakon jedne takve promene stanja dugme otkriva svoj bug.

Ima li neko ideju kako bi se ovo moglo rešiti?
[ noviKorisnik @ 15.10.2004. 08:03 ] @
... evo još jednog koje ima isti bug -
Code:
_fsc = butt.onRelease = function ()
{
    fscommand ('fullscreen', true);
    this.onRelease = function ()
    {
        fscommand ('fullscreen', false);
        this.onRelease = _fsc;
    }
}
...
[ 4txx @ 15.10.2004. 11:03 ] @
u vezi problema...

Prosto fscommand salje komadu player-u, pomocu nje se ne moze proveriti da li je fullscreen ukljucen, zbog toga mora biti neki kontorler...(fsc)

Sto se tice ukljucivanja full-a preko menija, dodate komandu
-fscommand("showmenu", false);

A za CTLR+F je malo komplikovanije... Ja sam napravio kod koji bi trebalo da uradi bas to (da kad su zajedno pritisnuti crtl+f promeni stanje fulla i to zabelezi u fsc), ali posto player ima prvenstvo komadi nikako ne mogu da pokrenem ovu komadnu... osim jedino kad prvo drzite F pa pritisnete CTRL...

Code:

////funckcija promene fullscreen-a
x = function () {
    if (!fsc) {
        fscommand("fullscreen", true);
        fsc = true;
    } else {
        fscommand("fullscreen", false);
        fsc = false;
    }
};
////operacije vezane za slovo "F"
k = new Object();
k.onKeyDown = function() {
    if (Key.getCode() == "70" && sw1 == 0) {
        sw1 = 1;
    }
};
k.onKeyUp = function() {
    sw1 = 0;
};
Key.addListener(k);
////funkcije dugmeta...
btn.onRelease = function() {
    x();
};
////provera da li je CONTROL i F pritisnuti
_root.onEnterFrame = function() {
    if (Key.isDown(Key.CONTROL) && sw1 == 1 && sw2 == 1) {
        x();
        sw2 = 0;
    } else {
        sw2 = 1;
    }
};
[ noviKorisnik @ 15.10.2004. 15:11 ] @
postoji fscommand ('trapallkeys', true) analogno fscommand ('showmenu', false) ali nije fora u ubijanju perfomansi playera.

i dalje fali property _fullscreen i to je to, .
[ Ljubisas @ 16.10.2004. 09:46 ] @
Sve je to super,

samo je li moguce da niko ne zna, kako na web sajtu prikazati flash u fullscreen-u?

Samo jos to i prestacu da vas davim.
[ 4txx @ 27.10.2004. 10:42 ] @
imas trip da uradis dve html strane...
na jednoj samo ubacis flash, a na drugoj upises:
Code:
<script language="JavaScript">
window.open('start.html', '', 'fullscreen,')
</script>

i tako ti explorer otvori flash preko celog ekrana...(bolje je nego full preko F11 jer se tada vidi menu-bar)