Java 获取代号为1的树的选定索引

Java 获取代号为1的树的选定索引,java,tree,codenameone,Java,Tree,Codenameone,我使用TreeModel用数据库值动态填充树。是否有任何方法可以用其id填充和映射项目 是否有任何方法可以获取树的父级和子级的选定索引值。我试着用文字来填充树 String[][] arr = new String[][] {sBuilding.toArray(new String[sBuilding.size()]), sFloor.toArray(new String[sFloor.size()])}; model = new TreeModel() {

我使用TreeModel用数据库值动态填充树。是否有任何方法可以用其id填充和映射项目

是否有任何方法可以获取树的父级和子级的选定索引值。我试着用文字来填充树

String[][]  arr = new String[][] {sBuilding.toArray(new String[sBuilding.size()]), sFloor.toArray(new String[sFloor.size()])};

            model = new TreeModel() {

                public Vector getChildren(Object parent) {

                    if (parent == null) {
                        MainParent = parent;
                        Vector v = new Vector();
                        for (int iter = 0; iter < arr[0].length; iter++) {
                            v.addElement(arr[0][iter]);
                        }
                        return v;
                    }

                    Vector v = new Vector();
                    for (int iter = 0; iter < arr[0].length; iter++) {
                        if (parent == arr[0][iter]) {
                            if (arr.length > iter + 1 && arr[iter + 1] != null) {
                                for (int i = 0; i < arr[iter + 1].length; i++) {
                                    v.addElement(arr[iter + 1][i]);
                                }
                            }
                        }
                    }
                    return v;
String[]]arr=newstring[][{sBuilding.toArray(newstring[sBuilding.size()])、sFloor.toArray(newstring[sFloor.size()]);
模型=新树模型(){
公共向量getChildren(对象父对象){
如果(父项==null){
MainParent=父母;
向量v=新向量();
对于(int-iter=0;iteriter+1&&arr[iter+1]!=null){
对于(int i=0;i
树没有索引,它有路径。字符串树在演示中很有用,但在现实生活中却不太有用。在现实生活中,你可能会希望使用类似的东西,它映射到固有层次结构的数据


因此,您确实需要选定的值而不是选定的索引,并且可以通过树轻松访问。

使用函数
tree\addLeafListener(com.codename1.ui.events.ActionListener)可能会对您有所帮助
这样您就可以知道何时单击某个元素并获取其路径。如果您想要更复杂的属性,您可以自己制作一个映射