Hoe selecteert u een item op het scherm


  Share  
|


Knoppen kan de gebruiker klikt u op en maken een actie plaatsvinden. Een ander type van user interface-element, maar kan de gebruiker een item te selecteren op het scherm.

Het verschil is dat een gebruiker klikt om een selectie te maken, en dat filmclip verandert haar uiterlijk. Maar niets anders gebeurt. Op deze manier kan de gebruiker maken of veranderen haar selecties. Daarna kan de gebruiker klikt u op een andere toets of een andere actie uit te voeren.

We selecties gebruiken als de eerste stap naar het leren hoe te slepen en neerzetten filmclips, het doel van deze tutorial.

Knop in de Movie Clip Methode

Een filmclip kan niet zomaar reageren op een muisklik. In tegenstelling tot een knop, kan het geen gebruik maken van een on (release) of op (pers) handler.

Dus je moet lastig. Je zet een knop in een filmclip. De knop kan omgaan met de muis klikken zolang het is groot genoeg om de hele film clip te dekken.

Om dit te veranderen in een selecteerbaar filmclip, we moeten dit doen in een multiframe filmclip. Het eerste frame bevat de knop uit-knop genoemd. Deze knop heeft de volgende script:

on (release) (this.gotoAndStop (2);)

Door te verwijzen naar dit, is de knop referencement de filmclip dat het inch Frame 2 van de filmclip bevat een soortgelijke knop genaamd On Button. Het verschil is dat de On-knop is een beetje helderder, wat aangeeft dat de movie clip is geselecteerd. Het script voor deze film clip is vergelijkbaar:

on (release) (this.gotoAndStop (1);)

Zoals je wel kan raden, door te klikken op de knop op frame 2, de movie clip gaat naar frame 1, waar de oorspronkelijke uit-knop zich bevindt. Door te klikken op de knoppen in de filmclip over en weer, de movie clip gaat heen en weer tussen de frames 1 en 2.

Het enige wat overblijft is te plaatsen een stop (); commando op het eerste frame van de filmclip.

hitTest Methode

U kunt detecteren een muisklik in een filmclip zonder een knop. Echter, deze methode is een beetje lastiger. Nadat u het te leren, is het echter een veel schonere oplossing.

Om een muisklik te sporen op een filmclip zonder een knop, gebruik de onClipEvent (MouseDown) of onClipEvent (mouseup) filmclip handlers. Zo kunt u de volgende script op een filmclip:

onClipEvent (mouseup) (this.gotoAndStop (2);)

Twee beelden zijn in de film clip, elk met een verschillend gekleurde cirkel. Een stop (); commando is op de eerste frame van de filmclip.

Wanneer u deze film probeert, ziet u meteen waarom de onClipEvent (mouseup) handler is verschillend van de on (release) handler gebruikt op knoppen. Als u klikt op een filmclip, beiden reageren.

Dit komt omdat alle filmpjes de mouseup evenement krijgen toegezonden. Het is niet exclusief voor alleen de filmclip onder de cursor.

Bepalen welke Movie Clip is geklikt

Er is een manier om die movie clip bepalen is geklikt. De hitTest functie tests een muis locatie met een filmclip te zien of de locatie is in de filmclip. Dus, door een wijziging van het script, kunnen we alleen sturen de juiste filmclip aan haar tweede frame.

onClipEvent (mouseup) (if (this.hitTest (_root._xmouse, _root._ymouse)) (this.gotoAndStop (2);))

De hitTest functie kan werken een aantal verschillende manieren. In dit geval is gevoed de x-en y-waarden van de muis locatie. Het is voorafgegaan aan dit zodat het verwijst naar de huidige film clip. Wanneer de gebruiker klikt overal, krijgt de onClipEvent (mouseup) handlers in alle filmclips geactiveerd. Dan, zowel van de film clips hitTest uitvoeren van de test, maar een die onder de muis test positief en spring naar 2 frame.

Een selectie Script

Om dit te veranderen in een selectie script, hebben we om de gebruiker klikt u op het fragment meerdere malen en de stand van de filmclip van off naar on en weer terug naar weer veranderen.

Het script is om te bepalen welke staat de filmclip is momenteel in en vervolgens de clip verzenden naar de andere frame. Het script kan bepalen de huidige stand door te kijken naar de huidige frame van de filmclip. Dit kan gedaan worden met de toepasselijke naam _currentFrame eigendom. Deze eigenschap leest 1 wanneer de movie clip is op het eerste frame en 2, wanneer het op de tweede.

Hier is de nieuwe script. Dit is een complexe script omdat het eerste tests de locatie van de muis en vervolgens test de huidige frame van de filmclip.

onClipEvent (mouseup) (if (this.hitTest (_root._xmouse, _root._ymouse)) (if (this._currentFrame == 1) (this.gotoAndStop (2);) else (this.gotoAndStop (1);)) )

Nu heb je gezien twee totaal verschillende manieren om selecteerbare filmclips. Ik hou van de tweede manier beter omdat je niet eindigen met de extra bibliotheek symbolen van de knoppen. Het voordeel van het gebruik van knoppen, echter, is dat ze gemakkelijk kunnen bevatten omhoog, omlaag, en meer staten, die soms mooi zijn voor de feedback van de gebruikers als gebruikers hun keuzes kunnen maken

een artikel ingediend door Paulo Caldeira


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions