Strukturansicht
-
Hallo,
ich hab da ein Problem bei der Darstellung meiner Strukturansicht, und zwar werden die Tree-Elemente pTree1 und pTree2 hinter die Wurzel angefügt. pTree1 soll aber ein Untereintrag von pTree sein und pTree2 soll ein Untereintrag von pTree1 sein. Mit den anderen (Unter-)Einträgen klappt es so, wie ich es möchte.
Ohne die Initialisierung der pTree-Elemente, wird in meiner Strukturansicht erst mit den Einträgen ab pTree3 begonnen.
Hat jemand eine Idee, wo mein Fehler dabei ist und warum es so nicht funktioniert?
Mein Code ist folgender:CTreeCtrl *pTreeCtrl1=(CTreeCtrl *)GetDlgItem(IDC_TREE_Ansicht5); HTREEITEM pTree=NULL; HTREEITEM pTree1=NULL; HTREEITEM pTree2=NULL; HTREEITEM pTree3=NULL; HTREEITEM pTree4=NULL; HTREEITEM pTree5=NULL; HTREEITEM pTree6=NULL; if(listKopf){ listPtr=listKopf; pTree=pTreeCtrl1->InsertItem("Wurzel",NULL); while(listPtr){ //darstell.MessageBox(listPtr->gesamtEintrag); if(listPtr->kennza[0]>0 && listPtr->kennza[1]==0){ pTree1=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag,pTree); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]==0){ pTree2=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag, pTree1); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]>0 && listPtr->kennza[3]==0 && listPtr->kennza[4]==0){ pTree3=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag, pTree2); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]>0 && listPtr->kennza[3]==0 && listPtr->kennza[4]>0){ pTree4=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag, pTree3); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]>0 && listPtr->kennza[3]>0 && listPtr->kennza[4]==0){ pTree4=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag, pTree3); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]>0 && listPtr->kennza[3]>0 && listPtr->kennza[4]>0){ pTree5=pTreeCtrl1->InsertItem(listPtr->gesamtEintrag, pTree4); } if(listPtr->kennza[0]>0 && listPtr->kennza[1]>0 && listPtr->kennza[2]>0 && listPtr->kennza[3]>0 &&listPtr->kennza[4]>0 && listPtr->kennza[5]>0){ for(int i=1; i<=listPtr->kennza[5];i++){ CString str; str.Format( "Vers %01d", i ); pTree6=pTreeCtrl1->InsertItem(str, pTree5); } } if(listPtr->kennza[0]==0){ darstell.MessageBox("Nomenklaturbeginn mit 0"); } listPtr=listPtr->weiter; } } else darstell.MessageBox("Keine Liste"); }