Forum » Izdelava spletišč » Flash - določanje hitArea v MovieClip
Flash - določanje hitArea v MovieClip
lesnik24 ::
Zdravo!
Potreboval bi pomoč pri naslednjem problemu.
delam spletno stran v flashu, in namesto klasičnih gumbov imam movieClip, ki jih poganja naslednja koda:
btn_album.onRollOver = function() {
btn_album.gotoAndPlay ("_over");
}
btn_album.onRollOut = function() {
btn_album.gotoAndPlay ("_out");
}
btn_album.onRelease = function() {
gotoAndPlay ("album")
}
animacija gumba (oz kar gumb) je sestavljena sekvenc .png slik.
gumb je nepravilne oblike, njegova okolica je transparentna.
samega gumba ne morem izdelati v flashu, ker je narejen iz rastrske slike.
problem, ki bi ga želel rešit je, da se transparentni del png slike nebi štel v hitArea, oz. da bi se akciji onRollOver in onRollOut zgodili samo v primeru ko bi miš preletela rdečo zvezdo(na skici) in ne že v transparentni okolici.
kar je vseskupaj težko razložit je tukaj še za lažjo predstavo
vesel bi bik kakršne koli pomoči/nasvetov
lp
Potreboval bi pomoč pri naslednjem problemu.
delam spletno stran v flashu, in namesto klasičnih gumbov imam movieClip, ki jih poganja naslednja koda:
btn_album.onRollOver = function() {
btn_album.gotoAndPlay ("_over");
}
btn_album.onRollOut = function() {
btn_album.gotoAndPlay ("_out");
}
btn_album.onRelease = function() {
gotoAndPlay ("album")
}
animacija gumba (oz kar gumb) je sestavljena sekvenc .png slik.
gumb je nepravilne oblike, njegova okolica je transparentna.
samega gumba ne morem izdelati v flashu, ker je narejen iz rastrske slike.
problem, ki bi ga želel rešit je, da se transparentni del png slike nebi štel v hitArea, oz. da bi se akciji onRollOver in onRollOut zgodili samo v primeru ko bi miš preletela rdečo zvezdo(na skici) in ne že v transparentni okolici.
kar je vseskupaj težko razložit je tukaj še za lažjo predstavo
vesel bi bik kakršne koli pomoči/nasvetov
lp
Music Man ::
Slikca ti ne dela, tako da ne vem kako točno zgleda problem. Ampak recimo ena možna rešitev problema je, da tvoj class za gumb extenda Sprite, v tem razredu z addChild dodaš najprej MovieClip, nato pa še en Sprite (kar en navaden rectangle) katerekoli barve, ampak z alpha = 0. Tale kvadratek pozicioniraj točno nad tisto zvezdo. Nato pa dodaš vse mouse listenerje na ta kvadratek, v metodah, ki se prožijo ob mouse eventih, pa MovieClip postaviš na ustrezen frame.
Upam, da bi to moralo delat, ker govorim bolj po spominu, nimam pa sedaj pri roki eclipsa s Flash builderjem, da bi probal.
edit: gledam zdaj še dokumentacijo in razred Sprite ima property hitArea, ki sprejema argumente tipa Sprite. Glede na to, da MovieClip extenda Sprite, predvidevam, da tud MovieClip pozna ta property. Naredi pol raje to s tem, da tist kvadratek z alpha = 0 nastaviš za hitArea.
Upam, da bi to moralo delat, ker govorim bolj po spominu, nimam pa sedaj pri roki eclipsa s Flash builderjem, da bi probal.
edit: gledam zdaj še dokumentacijo in razred Sprite ima property hitArea, ki sprejema argumente tipa Sprite. Glede na to, da MovieClip extenda Sprite, predvidevam, da tud MovieClip pozna ta property. Naredi pol raje to s tem, da tist kvadratek z alpha = 0 nastaviš za hitArea.
Zgodovina sprememb…
- spremenil: Music Man ()
680x0 ::
1.) Namesto MovieClip uporabi Button, v Up, Over in Down frejme daj svoje PGN slikice, v Hit frame pa zriši objekt, ki bo določal površino gumba (ki je lahko neodvisna od površine slik v ostalih frejmih.
ALI
2.) Če zadevo skriptiraš, uporabi hitArea propery:
http://livedocs.adobe.com/flash/9.0/Act...
ALI
2.) Če zadevo skriptiraš, uporabi hitArea propery:
var square:Sprite = new Sprite(); square.graphics.beginFill(0xCCFF00); square.graphics.drawRect(200, 0, 100, 100); tvojGumb.hitArea = square;
http://livedocs.adobe.com/flash/9.0/Act...
#000000 ::
On bi rad mel gumb oblike kot je tista zvezda al neki podobnega, ga pa jebe ker ne zna tega narest.
lesnik24 ::
v bistvu imam enak problem kot je tukaj
http://blog.erikphansen.com/hit-area-of...
zj v as3 sm najdu kako se da to odpravit... sam moj page uporablja action script 2.0 in če bom vse spremenu v as 3 morm spet vse preprogramirat povrh tega pa nimam pojma o as3 :S :/
http://blog.erikphansen.com/hit-area-of...
zj v as3 sm najdu kako se da to odpravit... sam moj page uporablja action script 2.0 in če bom vse spremenu v as 3 morm spet vse preprogramirat povrh tega pa nimam pojma o as3 :S :/
maastermedia ::
Ne bi preverjal podrobnosti, ampak še vedno ti preostane obris hobotnice (oz. zvezde) s pen toolom. Obrisano zapolniš z barvo in narediš button/hitarea...
lesnik24 ::
pač glavni problem je bil da sam gumb močno spreminja obliko med samo rollover akcijo ampak sm zdj naredu nov movieClip, ga uporabil za hitArea, sam hitaArea pa se sinhrono spremninja z samo obliko gumba... sicr ne na pixel natančno a še vedno dovolj da sm težavo rešil :D
hvala vseeno vsem za trud :D :D
hvala vseeno vsem za trud :D :D
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Kako narediti animacijo z actionscriptomOddelek: Programiranje | 1082 (993) | peroteam |
» | Flash združevanjeOddelek: Izdelava spletišč | 1634 (1486) | kekc |
» | vprašanje iz flasha (actionscripta)Oddelek: Programiranje | 960 (777) | [MYTiX] |
» | Flash 5 - menujiOddelek: Programska oprema | 1443 (1285) | Lunik |
» | flashOddelek: Omrežja in internet | 1075 (1009) | Lunik |