- werk en... En de structuur van de gegevens van het gebruik van

, FLEX en gegevens over de structuur van de...,,,,,,,,,,,, deel 1,,,,,,, het netwerk van delen van maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' niet missen., gebeurt het vaak dat dit nodig is om de gegevens van de in - /XML - documenten of hola en meerdere niveaus van het nest.Helaas, bij verstek, FLEX datagrid kan je zien met slechts één nest objecten, de uitbreiding van de categorie van het FLEX - les, waaruit blijkt hoe om tegemoet te komen aan de meer complexe structuur van de gegevens.Het zal u ook vertellen hoe laat alle sorteren, zelfs het gebruik van de structuur van de gegevens...,,,,,,,, ingevoerd, deze les is dat je weet dat - op basis van kennis, het gebruik van flex - gebruik, en voor het opstellen van de documenten.Je moet een installatie in je systeem een kopie van de installatie van flexibele, stap 1: de installatie van flexibele projecten, de eerste stap is in de installatie van flexibele bouwers van het project.Het creëren van nieuwe FLEX -, de naam van het project, zoals de "nesteddatagrid", de aard van de toepassing voor de webapplicatie (operationeel in Flash Player) ".Weg van alle andere opties van de standaardwaarden, klik afmaken.,, stap 2: input van gegevens, verkregen uit een XML - bestand, is dat wij in de weergave van de gegevens.Het creëren van je "de folder" activa "een map, de volgende is een XML -" conferentie van de gegevens.Of je kan worden gedownload van het dossier, zet het op "activa" in de map.De XML - = "1" codering = "utf - 8"?> < meetings> < meeting> < priority> high< /priority> < presenter> < name>, Lisa Green< /name> < email> [email protected]< /email> < phone> +330-7593< /phone> < /presenter> < date> Twaalfde juli 2009< /date> < time> om zes uur pm<; /time> < place> de kamer 405< /place> < /meeting> < meeting> < priority> medium< /priority> < presenter> < name> Christopher Martin< /name> < email> [email protected]< /email> < phone> +330-7553< /phone> < /presenter>; < date> op 14 mei juli 2009< /date> < time> 11 am< /time> < plac;E > kamer 405< /place> < /meeting> < meeting> < priority> high< /priority> < presenter> < name>, George Rodriguez< /name> < email> grodriguez@ company.com< /email> < phone> +330-7502< /phone> < /presenter> < date> 18e juli 2009<; /date> < time> 10 am< /time> < place> de kamer 771< /place> < /meeting> < meeting> < priority> high< /priority> < presenter> < name>, Jennifer Parker< /name> < email> [email protected]< /email> < phone> +330-5380<; /phone> < /presenter> < date> op 20 augustus 2009< /date> < time>; 2: 00 < /tijd > < naam > 562 kamer < /lokale > < /vergadering > < /conferenties >, stap 3: de interface, hier is een snelle verdeling van de interface met de gegevens en De overeenkomstige waarde van de id - code nodig in deze handleiding:,, open de nesteddatagrid.mxml documenten, het ontwerp van mening, sleep - en van de vergadering "Panel" oog druppels.De ID 'meetingspanel "en" conferentie "in de titel, de instelling van het panel en de vaststelling van de hoogte en breedte van 500 X en y van de waarde van 0, slepen en een panel op de vaststelling van de waarde, de X - en Y - 10, de breedte als de width-40} {meetingspanel en lengte van 45%, naar de bron., en met" MX: toepassing van "toe te voegen aan de eigendom van etikettering, indeling =" verticale ", je interface moet lijken op de hieronder aangegeven:,, bron van mening ook eruit moet zien:, <?De XML - = "1" codering = "utf - 8"?> < mx:Application xmlns:mx= "http://www.adobe.com/2006/mxml" layout= "verticale" > mx:Panel < x = "0" y "0" breedte = "500" hoogte = "500" layout= "absolute" = "meetingsPanel" titel: "en de vergaderingen" > mx:DataGrid < x = "10" y "10" breedte = "{meetingsPanel.width-40}" hoogte = "45%" > < mx:columns> < mx:DataGridColumn headerText= "kolom 1" dataField= "col1" /> < mx:DataGridColumn headerText= "kolom 2" dataField= "na" /> < mx:DataGridColumn headerText= "kolom 3" dataField= "col3" /> < /mx:columns> < /mx:DataGrid> < /mx:Panel> <; /mx:Application>, lezen in het XML - dossier, in de volgende drie stappen, we creëren een HTTPService onderdeel, lees de gegevens van het XML - bestand en storIn de lokale variabelen.Dit is in drie fasen:, stap 4: scheppen van diensten, schakel over naar de bron van mening ook documenten en de toevoeging van de volgende code onder toepassing van etikettering: MX:,,, < MX:HTTPService id = "=" URL readxml "activa /vergadering. - resultformat =" doel "resultaten" httpresulthandler = (zaak) "schuld" (= httpfaulthandler gebeurtenissen) "/> dit httpresulthandler () functie zal worden ingeroepen gegevens moet worden gelezen.Als bij het lezen van de gegevens onjuist zijn, de httpfaulthandler (functie) worden genoemd.Let op, dit zal alleen maar leiden tot diensten en gegevens moeten worden expliciet noemt (zie punten 3), salaristrap 5: httpresulthandler () (), en httpfaulthandler toe te voegen, MX: script. Juist onder de MX: toepassing van het etiket.Daar, de definitie van variabelen, de input van gegevens en diensten onderdeel met het incident.De code ziet er als volgt uit: de invoer mx.rpc.events.faultevent; de invoer van mx.rpc.events.resultevent; de invoer van mx.collections.arraycollection; de invoer van mx.controls.alert; [Bindable] de variabelen dataforgrid:ArrayCollection; particuliere functie httpresulthandler (zaak: resultevent): ongeldig {dataforgrid = event.result.meetings.meeting;} privé functie httpfaulthandler (gebeurtenissen: faultevent): invaliditeit (signalering (". Een fout in de string");}, wordt dataforgrid "red data, we moeten kijken."[Bindable] etiket om ervoor te zorgen dat wanneer de gegevens veranderen (als het lezen, de bijwerking van de gegevens).De XML - is gericht op de "lezen, door resultevent" gebeurtenissen, en de gebeurtenissen. De resultaten van de Conferentie tot arraycollection aannemen. De conferentie. "Conferentie" van het object ".Stap 6: bij deze stap om gegevens te verkrijgen, in dit stadium, de werkelijke functie om de toegang tot de gegevens.- voor het geval de functie van een aangewezen is voor elke toepassing van belasting van de creationComplete gebeurtenissen.Toevoeging van eigenschappen, creationComplete = "getdata ()", "MX: toepassing van het etiket en de omschrijving van de functies van getdata ()" als volgt (de httpfaulthandler "worden toegevoegd na de getdata ()): private functie:. {readxml. Stuur ();}, waardoor de diensten van de gegevens van het dossier lezen.Zodra de gegevens worden opgevraagd, "resultaten" gebeurtenis "httpresulthandler (is).Als er een probleem is van de gegevens, "fout" gebeurtenissen wordt veroorzaakt, wordt httpfaulthandler (), stap 7: mijlpaal op dit punt in je nesteddatagrid.mxml eruit moet zien:, <?De XML - = "1" codering = "utf - 8"?> < MX: de toepassing van xmlns:MX = "http://www.adobe.com/2006/mxml" layout = "verticale" = "getdata () creationComplete" > < script> MX:<.Invoer van gegevens [[mx.rpc.events.faultevent; de invoer van mx.rpc.events.resultevent; de invoer van mx.collections.arraycollection; de invoer van mx.controls.alert; [Bindable] de variabelen dataforgrid:ArrayCollection; particuliere functie httpresulthandler (gebeurtenissen: resultevent): niet - {dataforgrid = nieuwe arraycollection aannemen (gebeurtenissen. De resultaten. De vergadering. De vergadering);} privé functie httpfaulthandler (gebeurtenissen: faultevent): invaliditeit (signalering blijkt ("verkeerd. In de rij voor het verkrijgen van");} privé functie getdata ():void {readxml. Stuur (});]] > < /MX: SCRIPT > < MX:HTTPService id = "=" URL readxml "activa /vergadering. - resultformat =" doel "resultaten" httpresulthandler (=C) "fault=" httpFaultHandler (C) "/> < mx:Panel breedte =" 500 "hoogte =" 500 "layout=" verticale "=" meetingsPanel "titel:" en de vergaderingen "> < mx:DataGrid breedte =" {meetingsPanel.width-40} "hoogte =" 45% "> < mx:columns> < mx:DataGridColumn headerText=" kolom 1 "dataField=" "/> brengen; < mx:DataGridColumn headerText=" kolom 2 "dataField=" na "/> < mx:DataGridColumn headerText=" kolom 3 "dataField=" col3 "/> < /mx:columns> < /mx:DataGrid> < /mx:Panel> < /mx:Application> 8: de gegevens met Non-Nested, stap ik uit waarom ik, kort punt..." poses. In een eerste demonstrating door hoe je show non-nested data.Dat van bovenaf in XML - bestand, en je wil dat de datum van de vergadering, de plaats en de prioritaire en niet - informatie).De volgende code zal kunnen laten zien dat het geen enkel probleem (MX: inhoud van het paneel hier.Al het andere is dezelfde code): < MX:DataGrid, breedte = "(meetingspanel. Width-40}" hoogte = "45%" = "{} dataprovider dataforgrid" > < MX: kolom > < MX:DataGridColumn headertext = "prioritaire" gegevensvelden = "prioriteit" /> MX:DataGridColumn < headertext = "Date" gegevensvelden = "Date" /> < MX:DataGridColumn headertext = "tijd" gegevensvelden = "tijd" /> < MX:DataGridColumn headertext = "plaats" gegevensvelden = "lokale" /> < /MX: kolom > < /MX:DataGrid > de resultaten zullen de volgende verzoeken:,,, dat de dataprovider datagrid eigenschap kan worden rechtstreeks toegekend aan de "dataforgrid arraycollection aannemen, elk in een datafield eigendom datagridcolumn IIDe rechtstreeks betrokken eigenschap van de naam.Maar, als je de namen van de personen die toegang tot de demonstratie wil informatie, kan het worden geraadpleegd als "de presentator.Als je de waarde van het gegevensveld "krijg je een fout.Het is niet omdat, buigen voor standaard... Object.Blijf verder lezen om te begrijpen hoe de door de uitbreiding van datagridcolumn en uw code voor de behandeling van dergelijke gevallen om dit probleem op te lossen, stap 9: het creëren van een nesteddatagridcolumn, leggen we een functie in de lijst van de bovengenoemde problemen.In de eerste plaats het creëren van in de "Gids" dossiers "genoemd.In deze folder aan het creëren van een nieuwe klasse van de behandelingen, de naam van het nesteddatagridcolumn ".In de "vader" BAR, klik op "door"... "En de keuze van datagridcolumn" uit de lijst komt.Alles voor de standaardwaarden en daarna afmaken.Een nieuw dossier moeten worden gecreëerd en het vullen van de volgende code:, tassen (invoer mx.controls.datagridclasses.datagridcolumn; de cursus uit openbare functie nesteddatagridcolumn datagridcolumn {nesteddatagridcolumn (columnName:String = nul) (ultra (columnname);}}} 10: "nesteddatafield aangekondigd, stappen in de nesteddatagridcolumn" eigendom van klassen, de toevoeging van een publiek kan worden gebonden de variabele "nesteddatafield".We kunnen dit gebruiken in plaats van de standaard datafield eigendom door de naam van het veld.Dit is van essentieel belang, want als de standaard datafield eigendom van het gebruik van een valse verklaring, fout: het vinden van normen moet ten minste een volgorde van waarden, als we proberen te sorteren in de definitie van de gewoonte een functie na stap 11: een nieuwe definitie van "itemtolabel" functie, als je ons kan zien, het creëren van een nieuwe klasse is een aannemer.De fabrikant is uit de volgende functies: openbare functie wordt het volgende toegevoegd, die itemtolabel (gegevens): string {var: - op het gebied van etikettering; var: touw; var datafieldsplit: string nesteddatafield; var - gegevens: object = gegevens; ///////- nesteddatafield waarde bevat een "." (d.w.z. de toegang tot een nest in waarde) als (nesteddatafield. ("").= 1) {///////toegang moeten hebben tot alle gebieden van de datafieldsplit gebied =. Delen van ("." (f); elk var: touw) /ring door de velden voor de waarde van de definitieve, zal een grote iedere herhaling van de gegevens (gegevens; f = gegevens Als een string) /eindelijk terug waarde van de string (gegevens) als er geen betrekking heeft op andere ///////.} {als datafieldsplit nest!= = = = = = = gegevens gegevens ") [datafieldsplit]) ///////; als we niet de methode zoals verwacht, om de functie van een standaard proberen {etiket = gegevens. Tostring ();} vangst (E: fout) {etiket = super. Itemtolabel (gegevens); De resultaten terug naar het etiket} ///////;}, de herdefiniëring van de itemtolabel" functies toegang kunnen krijgen tot de gegevens van je is... Net voor de belangrijke gegevens.Dit is wat de functie van de itemtolabel datagrid vermeld.Dus, we gebruiken om te vragen - aan te tonen... De manier waarop de gegevens, hebben we de verordening, zie je, de functie van de definitie van "het" het sleutelwoord, betekent dit dat de standaard van de vooraf bepaalde namen dezelfde functie in de functie van je definitie van steun aan het herschrijven.In de toelichting van elke verklaring.Kortom, is de functie van onderzoek... Is de toegang tot de gegevens of (indien aanwezig is).Als de naam van het veld, van elk van de gegevens, en die de aanbieders van gegevens, elke stap van de weg naar de velden, itemtolabel functie "genoemd - met behulp van een parameter is opgenomen arraycollection aannemen, aangewezen als de dataprovider.Nesteddatagridcolumn alle eigenschappen (bij het gebruik van de documenten rechtstreeks toegang krijgen tot en gebruik) van de eigenschappen als omschreven in deze klas kan de waarde van de opdracht in.In onze nesteddatagrid.mxml dossier, we vervangen de MX: "componenten" datagridcolumn: nesteddatagridcolumn "component en de specifieke elementen in het programma spelen, we willen nesteddatafield eigenschappen (dit is aangekondigd in de" nesteddatagridcolumn. "Documenten).Datagridcolumn nu eruit moet zien: MX:DataGrid, < x = "10" en "10" breedte = Y = "(meetingspanel. Width-40}" hoogte = "45%" = "{} dataprovider dataforgrid" > < MX: kolom > <: nesteddatagridcolumn headertext = "Prioritaire" nesteddatafield = "" prioritaire "breedte = 60 '/> <: nesteddatagridcolumn headertext =" moderator "nesteddatafield =" - de naam. Het eerste naam = "valse" /> <: nesteddatagridcolumn headertext = "moderator" telefoon nesteddatafield = "van de gastheer. Telefoon" breedte = 90 "=" valse "/. > <: nesteddatagridcolumn headertext =" dag "nesteddatafield =" Date "breedte = 110 /> <: nesteddatagridcolumn headertext =" tijd "nesteddatafield =" tijd ", breedte =" 70 "/>Categorie: nesteddatagridcolumn; < headertext = "lokale" nesteddatafield = "lokale" breedte = 70 's /> < /MX: kolom > < /MX:DataGrid >, alsjeblieft, ik ben direct aangewezen nesteddatafield "eigendom" bemiddelaars ". En" telefoon "van de gastheer.Trouwens, ik heb toe te voegen aan de lijst van breedte van 600 pixels met een breedte van het panel "MX: component beter zien.Ik heb nog een eigenschap van de twee kolommen is vals.Als je deze te schrappen (of die waar) en de werking van het programma, het programma niet zal sorteren.We zullen in de loop van de procedure om dit probleem op te lossen, door de vaststelling van zijn eigen soort functie.Nu de aanvraag moet uitzien:,,, een 12 - stappen: de opstelling van een speciaal soort functie, nu nog moeten doen is de functie van de definitie van een speciaal soort, die ook zal op alle gebieden (bijvoorbeeld, wil je de gastheer van de alfabetische volgorde)."Mysortcomparefunction" toe te voegen aan de functie van de volgende functies: "itemtolabel voor particuliere functie, mysortcomparefunction (obj1: doel: doel: int doelstellingen 2) {var: generator; op het gebied van var - datafieldsplit: string nesteddatafield; var currentdata1: object = obj1; var currentdata2: object = ((doelstellingen 2; als nesteddatafield." ").!= = = = = = = 1) {gebied datafieldsplit. Splitsing ("." (f); elk var: touw) {currentdata1 = currentdata1 [f]; [currentdata2 = currentdata2;}} {als andere (datafieldsplit!= ") {currentdata1 = currentdata1 [datafieldsplit]; currentdata2 = currentdata2 [datafieldsplit];}} als (currentdata1 int & & currentdata2 int) {VAR INT1:int = int (currentdata1); var INT2:int = int (currentdata2); var resultaten: int = (int1 > INT2)?- 1: 1; de resultaten terug;} als (currentdata1 serie & & currentdata2 is string) {currentdata1 = string (currentdata1); currentdata2 = string (currentdata2); terug (currentdata1 > currentdata2)?- 1: 1;} als (currentdata1 datum & & currentdata2 is de datum) {VAR date1: datum = currentdata1 datum; var date2: datum = currentdata2 datum; var date1timestamp: hoeveelheid = currentdata1. Gettime (); date2timestamp: - = aantal currentdata2. Gettime (); terug (date1timestamp > date2timestamp)?- 1: 1;} terugkeer 0;}, de functie van de twee objecten worden gebogen, en het verwachte rendement van 1 of 1, afhankelijk van het eerste doel is groter dan of gelijk aan, respectievelijk, de tweede doelstelling voor minder dan dat.- zorgen voor werkelijke sorteren, met dezelfde logica van deze functie, de functie van "itemtolabel overeenkomstige... Van waarde.En dan op grond van de aard van de waarde (of getallen, touw, datum) goed, en de terugkeer van currentdata1 "groter is dan 1 als" currentdata2 ", 0 als ze gelijk, 1 als currentdata2" dan "currentdata1", stap 13: haak. Gewoonte een functie, als u merkt dat de "customsortcomparefunction" niet. In de categorie datagridcolumn we op een van tevoren vastgestelde taken.Deze functie op verschillende manieren moeten worden toegewezen aan de hoogste functie.We moeten de sortcomparefunction toegewezen aan vooraf gedefinieerde variabelen van de rangschikking van de naam van de functie, het is "customsortcomparefunction" in onze zaak.Dit moet in de fabrikant binnen doen.Nu ziet er als volgt uit: de fabrikant, openbare functies nesteddatagridcolumn (columnName:String = nul) (///////van een speciaal soort functies worden toegewezen aan vooraf gedefinieerde variabelen sortcomparefunction = mysortcomparefunction; - (columnname);}, als je dat doet, alles is voor je geregeld.Nu heb je een speciaal soort en met een van de gegevens vermeld in het nest.Je kan je net, conclusies, heb je vandaag geleerd hoe te voorkomen dat dergelijke beperkingen flexdatagrid willekeurige... Gegevens, en dat het in de datagrid.Heb je ook geleerd hoe hun functie van de indeling, het netwerk is kunnen worden opgelost.Nu kan je met deze nesteddatagridcolumn je alle aanvragen geen kosten, je kan een verdere verlenging van de itemtolabel kenmerken, zoals toegang tot elke vorm van toegang tot de gegevens over de andere, in de sub - object of de toegang van XML - eigenschappen.Je kan ook een verdere uitbreiding van de functie van een soort op andere soorten gegevens.Je kan ook nog andere functies, zoals de kleur van de lijn van de conferentie op basis van de prioriteiten, en blijk te geven van meer details door te klikken op een rij, bedankt voor het lezen.



Creating the new project
The interface




Previous:
Next Page: