Original geschrieben von sebo
was ist denn eine blinde buttoninstanz?
Das ist ein Symbol. Es gibt doch Movieclips, Buttons, Grafiken.
Eine blinde Buttoninstanz ist eine Instanz des Symbols „Button“, welcher durch den aktiven Bereich definiert und somit quasi unsichtbar ist.
Buttons benutze ich allerdings gar nicht mehr, sondern direkt Movieclips mit entsprechendem Handler und einer Funktion. Das ist viel viel flexibler.
movieclip.onRelease=function(){//do this, do that}
Original geschrieben von sebo
in deiner .fla sind ja auch lauter movieclips bzw buttons.
Ein Movieclip ist eigentlich kein Button. Das was dort das ganze steuert, sind einfach 4 blinde Buttoninstanzen mit einem simplen gotoAndStop() im onRollOver Handler. Das ist dort extra so „billig“ wie möglich gemacht, damit jeder Anfänger es versteht. Also kein hitTest(); keine Movieclip Buttonhandler, keine Mouseabfragen in einem onEnterFrame()…
Original geschrieben von sebo
mit sensitivem bereich mein ich, daß im AS der maus gesagt wird, daß auf einer z.b. 400x300px bühne der bereich 0, 0, 30, 30 (also oben links) sensitiv ist, also bei rollover dieses bereichs soll was im movieclip passieren.
0,0,30,30 bedeutet x==0, y==0, width==30, height==30, oder? Das würde dann bedeuten, das ein 30*30 großer Ausschnitt auf 0,0 dadurch definiert ist.
Nun, in Flash gibt es aber nicht das Prinzip, wie es bei Imagemaps angewandt wird.
Du kannst dir, wenn du es so machen willst, einen großen Movieclip mit 400*300 erstellen und eine Instanz auf die Bühne legen, die die gleiche Farbe hat, wie der Hintergrund hätte. Oder du machst das ganze einfach transparent. Und dann kannst du in einem onEnterFrame Handler mittels hitTest() abfragen, ob sich die Mouse an der von dir definierten Stelle befindet oder nicht. hitTest hat einen boolschen Rückgabewert, mit dem kannst du dann ja arbeiten. Und wenn die sensitiven Bereiche wechseln, kannst du dir das ganze auch in eine Funktion oder direkt in einen Prototype schreiben und die variierenden Werte als Parameter übergeben.
Falls aber nur ein bestimmter Bereich sensitiv ist und auch nicht variiert, sowie es bei dir wahrscheinlich sein wird, dann benutz doch einfach transparente MC Instanzen, die du an die Stelle legst wo es sensitiv sein soll und dann halt einen hitTest() auf die Instanz in einem onEnterFrame anlegen.
Original geschrieben von sebo
das script von dir durchschau ich leider nicht...
Wenn du das aus der .fla nicht verstehst, was ja nur ein simples gotoAndStop() ist, dann vergiß ebenfalls das ganze mit hitTest und lege dir einfach an die sensitiven Stelle eben diese blinden Buttoninstanzen und definiere die Aktion in deren onRollOver Handler.
Liebe Grüße
Yves