Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17-11-2008, 11:06   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2006
Beiträge: 83
AdvancedDataGrid Tree unterscheidliche Icons setzten?!

Hi,

ich bin gerade Dabei Daten die ich per HTTPService bekomme in einem AdvancedDataGrid anzuzeigen.
Die Daten kommen per XML und ich übergebe sie als HierarchicalData, da sich das Grid im "Tree-Modus" befindet.

Also ungefähr so:



Nun sollen die Items verschiedene Icons bekommen, wie man allen das gleiche Icon geben kann, hab ich schon raus ... per style. Aber wie ich jetzt jedem einzelnen ein Icon zuweisen kann, finde ich nur für ArrayCollection aber nicht für HierarchicalData.

Ich hoffe ihr könnt mir einen Tipp geben

MFG
jacquesr
jacquesr ist offline   Mit Zitat antworten
Alt 17-11-2008, 11:28   #2 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.146
Du könntest dir einen eigenen ItemRenderer bauen...
Omega Psi ist offline   Mit Zitat antworten
Alt 17-11-2008, 11:31   #3 (permalink)
Neuer User
 
Registriert seit: Oct 2008
Beiträge: 148
hat der AdvancedDataGrid nicht auch eine labelfunction/iconfunction wie zb Tree/List etc...?

das wäre etwas einfacher, als sich einen renderer zu schreiben...

EDIT: auch AdvancedDataGrid hat diese funktion, hab grad nachgeschaut

so zb:

Code:
private function getIcon(xml:XML):Class{
    var icon:Class = Assets.standardIcon; 
				
    if(parseInt(xml.@checked1) == 1){
        icon = Assets.specialIcon;
    }else if(parseInt(xml.@checked2) == 1){
       icon = Assets.specialIcon2;
    }				
    return icon;
}

Geändert von sytch (17-11-2008 um 11:41 Uhr)
sytch ist offline   Mit Zitat antworten
Alt 17-11-2008, 12:12   #4 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.146
Ich hatte auch nicht nachgeschaut... sehr schön!
Omega Psi ist offline   Mit Zitat antworten
Alt 17-11-2008, 12:19   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2006
Beiträge: 83
Wie meinst du das mit der IconFunction?
Ich Arbeite noch nicht so lange mit Flex (1 Woche)

Das mit dem ItemRenderer klingt auch interessant, hast du vielleicht ein Beispiel oder ein Link zu einem Beispiel.

Und danke schon mal, für die schnelle Antwort.

MFG
jacquesr
jacquesr ist offline   Mit Zitat antworten
Alt 17-11-2008, 12:29   #6 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.146
Schaue dir mal diese Beispiele an: http://blog.flexexamples.com/tag/iconfunction/

Das funktioniert wie von sytch illustriert analog mit dem ADG.
Omega Psi ist offline   Mit Zitat antworten
Alt 17-11-2008, 12:33   #7 (permalink)
Neuer User
 
Registriert seit: Oct 2008
Beiträge: 148
du kannst so zb eine iconFunction verwenden:

Code:
<mx:AdvancedDataGrid iconFunction="getIcon" ...../>
der inhalt der row wird der funktion als xml übergeben, dann kannst du dir deine bedingungen für die icons selber zusammenschustern...
sytch ist offline   Mit Zitat antworten
Alt 17-11-2008, 12:44   #8 (permalink)
Neuer User
 
Registriert seit: Oct 2008
Beiträge: 148
vielleicht ist noch anzumerken, dass es eigentlich auch über "labelField" und "iconField" machbar wäre...
allerdings hatte ich mal probleme damit beim schliessen/öffnen eines trees. als ich umgestiegen bin auf "labelFunction"/"iconFunction" hat sich der laufzeitfehler behoben... die ursache konnte ich nicht ausfindig machen. es gab da probleme mit dem closedIcon/openedIcon...
sytch ist offline   Mit Zitat antworten
Alt 17-11-2008, 15:36   #9 (permalink)
Neuer User
 
Registriert seit: Jun 2006
Beiträge: 83
Super danke für die schnelle Hilfe, hat super geklappt

Eine Frage hätt ich noch, kann man, wenn sich das ADG im "flat" Modus befindet auch vor jede Zeile ein Icon hängen?

MFG
jacquesr

Geändert von jacquesr (17-11-2008 um 15:37 Uhr)
jacquesr ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele