[flashmx] iets laten verkleinen met script

Pagina: 1
Acties:

  • Martink
  • Registratie: Juni 2001
  • Laatst online: 11-02-2025
Hoi,

Ik probeer iets in te laten schruiven met script.
nu heb ik dit:
code:
1
2
3
    while (mp3list._width > 1) {
        mp3list._width = mp3list._width-1;
    }


Maar hij is meteen klein :(
moet ik dat in frames zetten dat om frame weer 1tje kleiner of kan et ook makelijker???

Verwijderd

een while loop word uitgevoerd, zonder frame update. Dit betekent dat alles binnen een while loop, normaliter binnen de lengte van dat ene frame word uitgevoerd, en er dus geen update te zien is.

kijk eens in de actionscript dictionary naar setInterval, Movieclip.onEnterFrame...etc.

  • tec
  • Registratie: Juni 2001
  • Laatst online: 17-12-2024

tec

TEC

Het werkt ook gewoon zonder die while loop, elke keer als ie langs het frame met de code komt verkleint ie je object. Anders moet je inderdaad met bijvoorbeeld met setInterval aan de gang.

  • Martink
  • Registratie: Juni 2001
  • Laatst online: 11-02-2025
Aha dus je kan niet zeggen dat hij moet wachten tot frame is geupdated? :(
dan maar ff hele script ombouwen :)

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
flash:

frame: execute alle As -> update graphics -> volgende frame.

met als paar uitzondering dat in bepaalde 'events' je een updateStage (of iets in die aard die)

frame: special event -> update graphics -> excute as -> update graphics -> next frame.

onEnterframe of gebruik van een timer zijn aan te raden. Of gewoon een movie met 2 frames waarin je de tweede gewoon: if(m_mc._width > 1) m_mc._width--;

  • Martink
  • Registratie: Juni 2001
  • Laatst online: 11-02-2025
Ow heb nu al script gemaakt met dat interval maar loopt telkens vast :'(

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function sizechange() {
    if (newvensterwidth != mp3list._width) {
        if (newvensterwidth < mp3list._width) {
            if (newvensterwidth+15 < mp3list._width) {
            mp3list._width = mp3list._width-10.0;
            } else { mp3list._width = newvensterwidth }
        } else {
            mp3list._width = mp3list._width+10.0;
        }
    } else if (newvensterheight != mp3list._height) {
        if (newvensterheight < mp3list._height) {
            if (newvensterheight+15 < mp3list._height) {
            mp3list._height = mp3list._height-10.0;
            } else { mp3list._height = newvensterheight }
        } else {
            mp3list._height = mp3list._height+10.0;
        }
    } else {
        if (doneactie != "stop") { 
            loaddata(doneactie)
        }
            
    }
    trace("height: "+newvensterheight+" "+mp3list._height);
    trace("width: "+newvensterwidth+" "+mp3list._width);
}

Hij heeft een interval van 10. ik pas gewoon telkens newvensterwidth of newvensterheight aan dan moet dat script zelf inschruiven.

width werkt prima maar height niet. die loopt telkens vast.

voorbeeld ken je zien op www.aliosram.net/test/aliosram.html
gewoon paar keer op knopjes drukken en je ziet wat ik bedoel :(

bij vastlopen staat volgende in output schermpie
height: 355.1 364.4
width: 362 362
height: 355.1 354.9
width: 362 362
height: 355.1 364.4
width: 362 362
height: 355.1 354.9
width: 362 362

[ Voor 22% gewijzigd door Martink op 03-02-2004 22:47 ]

Pagina: 1