konto usunięte

Temat: tree component z mysql

Witam mam problem z zrobieniem kontrolki tree pobierającej dane z mysql
tabele w mysql wygląda tak: Zdjęcia
Piotr Zarzycki

Piotr Zarzycki Open Source
Developer

Temat: tree component z mysql

Krzysiek kub:
Witam mam problem z zrobieniem kontrolki tree pobierającej dane z mysql
tabele w mysql wygląda tak: Zdjęcia

Witam.

Sprecyzuj w czym jest problem, bo z tego niewiele wynika.
Teoretycznie wygląda to tak:
Załóżmy, że pobrane z tabeli dane zamieniasz na obiekty vo:


public class KategorieVo
{
public var nazwaKategori:String;
public var children:Array;
}


Gdzie w children trzymasz dzieci każdej kategorii. Powinieneś coś takiego zbudować. Może o tym wszystkim wiesz i nie potrzebnie się rozpisuję, więc proszę o Detale. ;)
Jarek Szczepański

Jarek Szczepański Flash Platform
Developer

Temat: tree component z mysql

Piotr Zarzycki:
Załóżmy, że pobrane z tabeli dane zamieniasz na obiekty vo:

z tym, że w tym momencie musisz stworzyć swój własny "TreeDataDescriptor" tak żeby komponent Tree wiedział jak się zachować i kiedy Twój obiekt ma dzieci ("hasChildren"), jest gałęzią ("isBranch"), etc

więcej - http://livedocs.adobe.com/flex/3/html/about_dataprovid...

Jarek
Piotr Zarzycki

Piotr Zarzycki Open Source
Developer

Temat: tree component z mysql

Jarek Szczepański:
Piotr Zarzycki:
Załóżmy, że pobrane z tabeli dane zamieniasz na obiekty vo:

z tym, że w tym momencie musisz stworzyć swój własny "TreeDataDescriptor" tak żeby komponent Tree wiedział jak się zachować i kiedy Twój obiekt ma dzieci ("hasChildren"), jest gałęzią ("isBranch"), etc

więcej - http://livedocs.adobe.com/flex/3/html/about_dataprovid...

Jarek

Faktycznie Jarku. Tak też trzeba było by postąpić, zapomniałem o tym. W każdym razie nadal brakuje tutaj detali, abyśmy nie musieli strzelać w ciemno. ;))

konto usunięte

Temat: tree component z mysql

Akurat dla tak zdefiniowanego KategorieVo nie trzeba tworzyć dodatkowo nic, bo zmienna odpowiadająca za dzieci nazywa się standardowo. Flex automatycznie sprawdza czy zmienna children jest pusta (Tutaj uwaga - jeśli dany element nie ma dzieci zmienna children powinna być prawdopodobnie nullem, jeśli będzie to pusty Array w drzewie wyświetli się ikonka folderu, którego nie będzie można rozwinąć).

Przykład:

<mx:Tree id="tree" labelField="nazwaKategori" />

protected function creationCompleteHandler():void
{
// Element
var a:KategorieVo = new KategorieVo();
a.nazwaKategori = 'kat 1';
// Pusta kategoria (folder)
var a2:KategorieVo = new KategorieVo();
a2.nazwaKategori = 'kat 2';
a2.children = new Array();
// Kategoria z dzieckiem
var a3:KategorieVo = new KategorieVo();
a3.nazwaKategori = 'kat 3';
var a31:KategorieVo = new KategorieVo();
a31.nazwaKategori = 'kat 3.1';
a3.children = new Array();
a3.children.push(a31);

var tablica:Array = new Array();
tablica.push(a);
tablica.push(a2);
tablica.push(a3);
tree.dataProvider = tablica;
}

Robert Bąk edytował(a) ten post dnia 24.11.10 o godzinie 11:52
Piotr Zarzycki

Piotr Zarzycki Open Source
Developer

Temat: tree component z mysql

Żeby zamknąć całą dyskusję to wycinek z dokumentacji gdzie faktycznie jest informacja o tym co wspomniał Robert:

Collections A collection implementation, such as an XMLListCollection or ArrayCollection object. The DefaultDataDescriptor class includes code to handle collections efficiently. Always use a collection as the data provider if the data in the menu changes dynamically; otherwise the Tree control might display obsolete data.

XML A string containing valid XML text, or any of the following objects containing valid E4X format XML data: <mx:XML> or <mx:XMLList> compile-time tag, or an XML or XMLList object.

Other objects An array of items, or an object that contains an array of items, where a node's children are contained in an item named children.


Czyli da się bez deskryptora własnego...Piotr Zarzycki edytował(a) ten post dnia 24.11.10 o godzinie 18:09

Następna dyskusja:

flex + mysql




Wyślij zaproszenie do