Dessa tre komponenter handlar alla om siffror i intervall. I denna Snabba Tips ser vi på hur du använder dem.
Den numeriska stegan låter dig ställa in ett nummer inom ett visst område med tangentbordet eller genom att klicka på piltangenterna. skjutreglaget låter dig dra en tumme för att välja ett nummer från ett område på ett mer grafiskt sätt, och i framdriftsfältet visas hur långt genom ett intervall ett visst tal är.
I förhandsgranskningen SWF får du se två etiketter, två NumericSteppers, två knappar, en blå cirkel och en reglage. NumericSteppers används för att ange ett antal tal som vi kommer att generera ett slumptal från. När knappen klickas ändras etiketten för att visa det slumptal som skapades. Slider används för att ändra cirkelns storlek; Genom att dra skjutreglaget höger ökar cirkelens storlek, medan draget vänster minskar cirkelens storlek.
Den andra knappen används för att ladda en SWF; tryck på knappen och en ProgressBar läggs till i scenen för att visa laddningsförloppet. När Loader laddar innehållet läggs den till scenen och ProgressBar tas bort.
Öppna ett nytt Flash-dokument och ställ in följande egenskaper
Öppna komponentfönstret genom att gå till Meny> Fönster> Komponenter eller tryck CTRL + F7.
Dra två knappar, två etiketter, två numeriska stegrar och en skjutreglage till scenen.
På Egenskaper-panelen ge den första etiketten förekomstnamnet "StepperLabel"
(Om Egenskaper-panelen inte visas går du till Meny> Fönster> Komponenter eller trycker på CTRL + F3)
Ange etiketten X till 19 och dess Y till 9.
Använda panelen Egenskaper:
Rita en blå cirkel med det ovala verktyget (håll skiftet kommer att dra för att få det att överensstämma med en cirkel) och konvertera det till en MovieClip genom att markera det, högerklicka och välja "Convert to Symbol". Ge det ett förekomstnamn av "theCircle".
Skapa en ny ActionScript-fil och ge den namnet Main.as
Vi kommer att förklara våra komponenter i Main.as så vi måste stänga av "auto deklarera scenen instanser". Fördelen med att göra detta är att du får koden antyder för förekomsten.
Gå till Meny> Arkiv> Publicera inställningar
Klicka på inställningar intill Skript [ActionScript 3]
Avmarkera "automatiskt deklarera sceninstanser"
I Main.as öppnar paketdeklarationen och importerar de klasser vi ska använda.
Lägg till följande på Main.as.
paket // Våra Onstage Componets importera fl.controls.NumericStepper; importera fl.controls.Slider; importera fl.controls.ProgressBar; importera fl.controls.Label; importera fl.controls.Button; // Behövs att förlänga klassen import flash.display.MovieClip; // Behövs att autosize vår etikett text import flash.text.TextFieldAutoSize; // De händelser som vi behöver i detta projekt importerar flash.events.MouseEvent; importera flash.events.Event; importera fl.events.SliderEvent; importera flash.events.ProgressEvent; // Behövs att ladda .swf-filen import flash.net.URLRequest; importera flash.display.Loader;
Låt oss lägga till klassen, göra det förlänga filmklippet och ställa in vår konstruktörsfunktion.
Lägg till följande i Main.as:
public class Main utökar MovieClip public var StepperLabel: Etikett; public var sliderLabel: Etikett; public var fromStepper: NumericStepper; public var toStepper: NumericStepper; public var randomNumButton: Button; public var loaderButton: Button; public var skjutreglaget: Slider; public var progressBar: ProgressBar; allmänhet var theLoader: Loader; allmänheten var cirkeln: cirkel; allmän funktion Main () setupLabels (); setupSteppers (); setupButtons (); setupSlider ();
Här definierar vi de funktioner som används i vår konstruktör.
I setupLabels ()
funktion vi gör några grundläggande inställningar på våra etiketter med hjälp av autosize
så att varje etikett automatiskt ändras för att hålla all text vidarebefordrad till den.
I setupSteppers () funktion vi ställer upp våra steppers "minimum" och "max" egenskaper. Dessa används för att begränsa de tillgängliga siffrorna inom steppen. Vi använder inte en händelselyssnare med skjutreglagen här (även om du kan använda Event.CHANGE
för reglagen att upptäcka när deras värde förändras).
I setupButtons ()
Vi lägger till vår text på knapparna via märka
egenskap och lägg till händelse lyssnare på knapparna.
I setupSliders ()
vi satte minimum
och maximal
för reglagenes värden. De snapInterval
anger hur mycket skjutreglarens värde ändras när du drar här använder vi .1. De liveDragging
är satt till Sann
så att glidreglarens värde är tillgängligt när du drar - om det var inställt på falsk
vi skulle inte kunna få värdet tills användaren slutat dra. Slutligen lägger vi till en lyssnare i reglaget.
Lägg till följande i Main.as:
privat funktion setupLabels (): void StepperLabel.text = "Klicka på knappen för ett slumpmässigt nummer"; // Autosizes etiketten för att hålla hela texten StepperLabel.autoSize = StepperLabel.autoSize = TextFieldAutoSize.LEFT; sliderLabel.text = "Dra skjutreglaget för att ändra cirkelstorlek"; // Autosize etiketten för att hålla hela texten sliderLabel.autoSize = sliderLabel.autoSize = TextFieldAutoSize.LEFT; privat funktion setupSteppers (): void // Minumumvärdena för Steppers fromStepper.minimum = 0; toStepper.minimum = 1; // Maximalvärdena för stepparna frånStepper.maximum = 99; toStepper.maximum = 100; // Ställ in steppersvärdet här frånStepper.value = 0; toStepper.value = 45; privat funktion setupButtons (): void randomNumButton.label = "Click"; randomNumButton.addEventListener (MouseEvent.CLICK, getrandomNumer); loaderButton.label = "Ladda SWF"; loaderButton.addEventListener (MouseEvent.CLICK, loadSwf); privat funktion setupSlider (): void // Minsta och maximala värden för reglaget slider.minimum = 1; slider.maximum = 3; // Detta anger hur mycket skjutreglaget "inkrementeras" av slider.snapInterval = .1; // liveDragging betyder att Steppers-värdet är tillgängligt när du drar // om det är felaktigt, får vi inte värdet tills vi slutade dra slider.liveDragging = true; slider.addEventListener (SliderEvent.CHANGE, scaleCircle);
Här lägger vi till de återstående funktionerna.
I getrandomNumber ()
funktion vi kallar en annan funktion, generateRandomNumber ()
, vilket är från en handledning här på Activetuts + av Carlos Yanez. Gå vidare och kolla in den handledningen för att se hur det fungerar!
De scaleCircle ()
funktionen får värdet på skjutreglaget och sätter in scaleX
och scaleY
av cirkeln
filmklipp. De scaleX
och scaleY
används för att ändra filmklippets storlek (skala).
De loadSwf ()
funktionen sätter upp en Loader som vi använder för att ladda en extern SWF. Vi lägger sedan till en händelseloggare i Loaderens content
; de content
håller information om vad lastaren laddar (här, en SWF).
Vi ställer sedan upp en ProgressBar
och lägg till det på scenen. Vi satte ProgressBar s källa
tillcontent
av lastaren, och sedan contentInfoLoader
innehåller information om vad lastaren laddar (inklusive bytesloaded
och bytestotal
) Så här kan ProgressBar uppdatera sig för att återspegla hur mycket av SWF har laddats.
De finishedLoading ()
funktionen ställer in x- och y-läget för Loaders innehåll (dvs SWF) och lägger sedan till scenen. Vid denna tidpunkt är vi färdiga med ProgressBar, så vi tar bort den från scenen.
Sedan stänger vi ut klassen och paketet.
privat funktion getrandomNumer (e: Event): void // Här passerar vi i två siffror (Steppers 'värden) generateRandomNumber (fromStepper.value, toStepper.value); privat funktion generateRandomNumber (minNum: Number, maxNum: Number): void // Håller det genererade numret var randomNumber = (Math.floor (Math.random () * (maxNum - minNum + 1)) + minNum); // Här kastar vi slumptal till en sträng så att vi kan använda den i etiketttexten StepperLabel.text = "Din slumptal är" + String (randomNumber); privatfunktionsskalaCircle (e: Event): void // scaleX och scaleY öka eller minska en MovieClips storlek // här använder vi reglaget värde från "1-3" theCircle.scaleX = e.target.value; theCircle.scaleY = e.target.value; privat funktion loadSwf (e: Event): void theLoader = new Loader (); theLoader.x = 319.00; theLoader.y = 31.00; theLoader.load (ny URLRequest ("dummy.swf")); // Här får vi lastarens innehållLoaderInfo vilket är vad lastaren // laddar (här en swf) theLoader.contentLoaderInfo.addEventListener (Event.COMPLETE, finishedLoading); progressBar = nya ProgressBar (); framstegBar.x = 323; framstegBar.y = 244; addChild (ProgressBar); // Progressionsfältets källa är inställd på lastarens innehållLoaderInfo // contentLoaderInfo innehåller information om SWFs bytesLoaded / bytesTotal progressBar.source = theLoader.contentLoaderInfo; Offentlig funktion finishedLoading (e: Event): void // Här ställer vi in loader content.x och .y //I.E. SWF: s .x och .y theLoader.content.x = 290; theLoader.content.y = 20; // Vi lägger till innehållet i lastare I.E. swf addChild (theLoader.content); // Eftersom det är laddaren laddad, behöver vi inte längre framdriftsfältet // Så vi tar bort det removeChild (progressBar); // stäng ut klassen // stäng ut paketet
Återigen med hjälp av komponenter är ett bra sätt att lägga till funktionalitet i dina Flash-filmer utan att behöva bygga dem från början
Du kommer att märka i panelen Komponenter Parametrar av komponenterna som du kan kolla och välja vissa egenskaper.
Ovanstående bild är för komponenten NumericStepper
Egenskaperna är följande för NumericStepper-komponenten:
Egenskaperna för skjutreglaget är som följer
SliderDirection.HORIZONTAL
och SliderDirection.VERTICAL.Egenskaperna för ProgressBar är som följer
ProgressBarDirection.RIGHT
Indikerar att framdriftsfältet fylls från vänster till höger. Ett värde av ProgressBarDirection.LEFT
Indikerar att framdriftsfältet fylls från höger till vänster.ProgressBarMode.EVENT
, ProgressBarMode.POLLED
, ProgressBarMode.MANUAL
För att se egenskaperna för etiketterna och knapparna ska du kolla in snabbspetsen på etiketter och knappar.
Hjälpfilerna är också ett bra ställe att lära dig mer om de komponentegenskaper du kan ställa in parametervanelen.
Tack för att du läser och se upp för mer kommande komponent introduktioner!