Osaako kukaan neuvoa ongelmassa, jota en ymmärrä? Minulla on Flash sovellus, jonka kukin näyttö on erillinen SWF-tiedosto ja vaihdan näyttöjä lataamalla uuden tiedoston sisältämän MovieClipin tyhjän parent-näytön päälle. Yksi näytöistä on valikko sisältäen valikko-itemeitä, joiden valinta edellyttää fokusta kyseisellä itemillä. Mikäli fokus ei ole ennestään itemillä, itemin klikkaus ainoastaan siirtää fokuksen sille. Muussa tapauksessa siirrytään itemin osoittamalle näytölle. Aluksi fokus on oletus itemillä, joka ei ole aktiivinen. Kun valiko näytöllä ollaan ensimmäistä kertaa, niin kaikki toimii mainiosti. Kuitenkin päädyttäessä valikko-näytölle uudestaan, ei fokusta jostain syytä tarkasteta enää lainkaan, vaikka koodi on aivan sama sisältäen fokuksen tarkastavan ehtolausekkeen, vaan sovellus siirtyy seuraavalle näytölle riippumatta fokuksesta. Ohessa on kyseisen valikko näytön sorsat.
var focus:Number = 0;
this.createEmptyMovieClip("background_mc", this.getNextHighestDepth());
background_mc._x = 0;
background_mc._y = 0;
this.createEmptyMovieClip("default_focus_mc", this.getNextHighestDepth());
default_focus_mc._x = 15;
default_focus_mc._y = 80;
this.createEmptyMovieClip("foo_focus_mc", this.getNextHighestDepth());
foo_focus_mc._x = 15;
foo_focus_mc._y = 205;
this.createEmptyMovieClip("bar_focus_mc", this.getNextHighestDepth());
bar_focus_mc._x = 15;
bar_focus_mc._y = 460;
var loader:MovieClipLoader = new MovieClipLoader();
loader.loadClip("menu_view.png", background_mc);
updateDisplay();
function clearDisplay() {
loader.loadClip("", default_focus_mc);
loader.loadClip("", foo_focus_mc);
loader.loadClip("", bar_focus_mc);
};
function updateDisplay() {
clearDisplay();
if ( focus == 0 ) {
loader.loadClip("grid_highlight.png", default_focus_mc);
}
if ( focus == 3 ) {
loader.loadClip("grid_highlight.png", foo_focus_mc);
}
if ( focus == 9 ) {
loader.loadClip("grid_highlight.png", bar_focus_mc);
}
};
var pressListener:Object = new Object();
pressListener.onMouseDown = function() {
if ( _parent.MAIN_MENU == _parent.current_view ) {
if ( 15 < _xmouse && 205 < _ymouse && 115 > _xmouse && 325 > _ymouse ) {
if ( focus == 3 ) {
_parent.setDisplay(_parent.FOO_SCREEN);
}
focus = 3;
}
if ( 15 < _xmouse && 460 < _ymouse && 115 > _xmouse && 585 > _ymouse ) {
if ( focus == 9 ) {
_parent.setDisplay(_parent.BAR_SCREEN);
}
focus = 9;
}
if ( 180 < _xmouse && 600 < _ymouse && 360 > _xmouse && 640 > _ymouse ) {
_parent.setDisplay(_parent.MAIN_SCREEN);
} else {
updateDisplay();
}
}
};
Mouse.addListener(pressListener);
Action Script ongelma
Flash aloittelija
0
758
Vastaukset
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Ranskan vasemmistojohtaja: "Kyllä, meneillään on suuri väestönvaihto!"
Ranskan vasemmistojohtaja Jean-Luc Mélenchon järkytti myöntämällä avoimesti sen, mitä tiedotusvälineet ovat pitkään pitä1032505Valion maitotehtaalla kapina
Ilmastonmuutoksesta, eläinten hyvinvoinnista ja ympäristön saastumisesta huolestuneet eläinkapinalliset estävät panssa522313SDP haluaa tappaa maaseudun - bensan hinta mahdollisimman korkealle
Maaseudulla auto on välttämätön asia, ja lähes kaikilla on bensa-autot. Kuinka tyhmä pitää olla jos äänestää demareita?1632075Päivän Riikka: polttoöljyn hinta räjähti
Näyttää tuo putinismi ilmenevän persuissa myös Suomen yrittäjien kampittamisena. Polttoöljy on se katalyytti, joka pitää171851Helsingin yllä valopalloja
https://www.iltalehti.fi/kotimaa/a/1508be00-28c9-4156-83dc-0be5e7aa3066 "Helsingin taivaalla lensi lauantaina puolen yön951445Kovasti on hävittäjiä ilmassa. Nytkö se alkoi?
Onko nyt sota ?? `Vai harjoituksiako vain? Hävittäjät pörrää kovasti.811265HÄLYYTYS!!
Ukraina se hyökkää jo Suomen maaperälle. https://www.iltalehti.fi/kotimaa/a/645b83ce-e074-4f00-8b99-245d01b38a363161189Helsingin yllä lensi yöllä jotain outoa puolen yön aikaan valopalloja
Poliisi on saanut tapauksesta yhden havaintoilmoituksen. Valopalloja oli noin parikymmentä ILtalehdessä on video tapah1111058- 791033
Nyt Zelenskyi pommittaa drooneillaan jo Suomea!
Kouvola kohteena: https://yle.fi/aihe/tekstitv?P=107226932